@aws-amplify/datastore-storage-adapter 1.3.8 → 1.3.9-next.20
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/CHANGELOG.md +56 -0
- package/dist/aws-amplify-datastore-sqlite-adapter-expo.js +597 -1278
- package/dist/aws-amplify-datastore-sqlite-adapter-expo.js.map +1 -1
- package/dist/aws-amplify-datastore-sqlite-adapter-expo.min.js +1 -1
- package/dist/aws-amplify-datastore-sqlite-adapter-expo.min.js.map +1 -1
- package/dist/aws-amplify-datastore-storage-adapter.js +595 -1269
- package/dist/aws-amplify-datastore-storage-adapter.js.map +1 -1
- package/dist/aws-amplify-datastore-storage-adapter.min.js +1 -1
- package/dist/aws-amplify-datastore-storage-adapter.min.js.map +1 -1
- package/lib/ExpoSQLiteAdapter/ExpoSQLiteAdapter.js +2 -4
- package/lib/ExpoSQLiteAdapter/ExpoSQLiteAdapter.js.map +1 -1
- package/lib/ExpoSQLiteAdapter/ExpoSQLiteDatabase.js +25 -80
- package/lib/ExpoSQLiteAdapter/ExpoSQLiteDatabase.js.map +1 -1
- package/lib/SQLiteAdapter/SQLiteAdapter.js +2 -4
- package/lib/SQLiteAdapter/SQLiteAdapter.js.map +1 -1
- package/lib/SQLiteAdapter/SQLiteDatabase.js +34 -99
- package/lib/SQLiteAdapter/SQLiteDatabase.js.map +1 -1
- package/lib/common/CommonSQLiteAdapter.js +36 -105
- package/lib/common/CommonSQLiteAdapter.js.map +1 -1
- package/lib/common/SQLiteUtils.js +15 -45
- package/lib/common/SQLiteUtils.js.map +1 -1
- package/lib/index.js +2 -4
- package/lib/index.js.map +1 -1
- package/lib-esm/ExpoSQLiteAdapter/ExpoSQLiteDatabase.js +1 -56
- package/lib-esm/ExpoSQLiteAdapter/ExpoSQLiteDatabase.js.map +1 -1
- package/lib-esm/SQLiteAdapter/SQLiteDatabase.js +1 -63
- package/lib-esm/SQLiteAdapter/SQLiteDatabase.js.map +1 -1
- package/lib-esm/common/CommonSQLiteAdapter.js +1 -70
- package/lib-esm/common/CommonSQLiteAdapter.js.map +1 -1
- package/lib-esm/common/SQLiteUtils.js +1 -31
- package/lib-esm/common/SQLiteUtils.js.map +1 -1
- package/package.json +7 -4
|
@@ -96,6 +96,292 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
|
96
96
|
/************************************************************************/
|
|
97
97
|
/******/ ({
|
|
98
98
|
|
|
99
|
+
/***/ "../../node_modules/tslib/tslib.es6.js":
|
|
100
|
+
/*!********************************************************!*\
|
|
101
|
+
!*** /root/amplify-js/node_modules/tslib/tslib.es6.js ***!
|
|
102
|
+
\********************************************************/
|
|
103
|
+
/*! exports provided: __extends, __assign, __rest, __decorate, __param, __metadata, __awaiter, __generator, __createBinding, __exportStar, __values, __read, __spread, __spreadArrays, __spreadArray, __await, __asyncGenerator, __asyncDelegator, __asyncValues, __makeTemplateObject, __importStar, __importDefault, __classPrivateFieldGet, __classPrivateFieldSet, __classPrivateFieldIn */
|
|
104
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
105
|
+
|
|
106
|
+
"use strict";
|
|
107
|
+
__webpack_require__.r(__webpack_exports__);
|
|
108
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__extends", function() { return __extends; });
|
|
109
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__assign", function() { return __assign; });
|
|
110
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__rest", function() { return __rest; });
|
|
111
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__decorate", function() { return __decorate; });
|
|
112
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__param", function() { return __param; });
|
|
113
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__metadata", function() { return __metadata; });
|
|
114
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__awaiter", function() { return __awaiter; });
|
|
115
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__generator", function() { return __generator; });
|
|
116
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__createBinding", function() { return __createBinding; });
|
|
117
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__exportStar", function() { return __exportStar; });
|
|
118
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__values", function() { return __values; });
|
|
119
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__read", function() { return __read; });
|
|
120
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__spread", function() { return __spread; });
|
|
121
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__spreadArrays", function() { return __spreadArrays; });
|
|
122
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__spreadArray", function() { return __spreadArray; });
|
|
123
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__await", function() { return __await; });
|
|
124
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__asyncGenerator", function() { return __asyncGenerator; });
|
|
125
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__asyncDelegator", function() { return __asyncDelegator; });
|
|
126
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__asyncValues", function() { return __asyncValues; });
|
|
127
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__makeTemplateObject", function() { return __makeTemplateObject; });
|
|
128
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__importStar", function() { return __importStar; });
|
|
129
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__importDefault", function() { return __importDefault; });
|
|
130
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__classPrivateFieldGet", function() { return __classPrivateFieldGet; });
|
|
131
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__classPrivateFieldSet", function() { return __classPrivateFieldSet; });
|
|
132
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__classPrivateFieldIn", function() { return __classPrivateFieldIn; });
|
|
133
|
+
/******************************************************************************
|
|
134
|
+
Copyright (c) Microsoft Corporation.
|
|
135
|
+
|
|
136
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
137
|
+
purpose with or without fee is hereby granted.
|
|
138
|
+
|
|
139
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
140
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
141
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
142
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
143
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
144
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
145
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
146
|
+
***************************************************************************** */
|
|
147
|
+
/* global Reflect, Promise */
|
|
148
|
+
|
|
149
|
+
var extendStatics = function(d, b) {
|
|
150
|
+
extendStatics = Object.setPrototypeOf ||
|
|
151
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
152
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
153
|
+
return extendStatics(d, b);
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
function __extends(d, b) {
|
|
157
|
+
if (typeof b !== "function" && b !== null)
|
|
158
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
159
|
+
extendStatics(d, b);
|
|
160
|
+
function __() { this.constructor = d; }
|
|
161
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
var __assign = function() {
|
|
165
|
+
__assign = Object.assign || function __assign(t) {
|
|
166
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
167
|
+
s = arguments[i];
|
|
168
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
169
|
+
}
|
|
170
|
+
return t;
|
|
171
|
+
}
|
|
172
|
+
return __assign.apply(this, arguments);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
function __rest(s, e) {
|
|
176
|
+
var t = {};
|
|
177
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
178
|
+
t[p] = s[p];
|
|
179
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
180
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
181
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
182
|
+
t[p[i]] = s[p[i]];
|
|
183
|
+
}
|
|
184
|
+
return t;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
function __decorate(decorators, target, key, desc) {
|
|
188
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
189
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
190
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
191
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
function __param(paramIndex, decorator) {
|
|
195
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
function __metadata(metadataKey, metadataValue) {
|
|
199
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
function __awaiter(thisArg, _arguments, P, generator) {
|
|
203
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
204
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
205
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
206
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
207
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
208
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
function __generator(thisArg, body) {
|
|
213
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
214
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
215
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
216
|
+
function step(op) {
|
|
217
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
218
|
+
while (_) try {
|
|
219
|
+
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;
|
|
220
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
221
|
+
switch (op[0]) {
|
|
222
|
+
case 0: case 1: t = op; break;
|
|
223
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
224
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
225
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
226
|
+
default:
|
|
227
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
228
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
229
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
230
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
231
|
+
if (t[2]) _.ops.pop();
|
|
232
|
+
_.trys.pop(); continue;
|
|
233
|
+
}
|
|
234
|
+
op = body.call(thisArg, _);
|
|
235
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
236
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
var __createBinding = Object.create ? (function(o, m, k, k2) {
|
|
241
|
+
if (k2 === undefined) k2 = k;
|
|
242
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
243
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
244
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
245
|
+
}
|
|
246
|
+
Object.defineProperty(o, k2, desc);
|
|
247
|
+
}) : (function(o, m, k, k2) {
|
|
248
|
+
if (k2 === undefined) k2 = k;
|
|
249
|
+
o[k2] = m[k];
|
|
250
|
+
});
|
|
251
|
+
|
|
252
|
+
function __exportStar(m, o) {
|
|
253
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
function __values(o) {
|
|
257
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
258
|
+
if (m) return m.call(o);
|
|
259
|
+
if (o && typeof o.length === "number") return {
|
|
260
|
+
next: function () {
|
|
261
|
+
if (o && i >= o.length) o = void 0;
|
|
262
|
+
return { value: o && o[i++], done: !o };
|
|
263
|
+
}
|
|
264
|
+
};
|
|
265
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
function __read(o, n) {
|
|
269
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
270
|
+
if (!m) return o;
|
|
271
|
+
var i = m.call(o), r, ar = [], e;
|
|
272
|
+
try {
|
|
273
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
274
|
+
}
|
|
275
|
+
catch (error) { e = { error: error }; }
|
|
276
|
+
finally {
|
|
277
|
+
try {
|
|
278
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
279
|
+
}
|
|
280
|
+
finally { if (e) throw e.error; }
|
|
281
|
+
}
|
|
282
|
+
return ar;
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
/** @deprecated */
|
|
286
|
+
function __spread() {
|
|
287
|
+
for (var ar = [], i = 0; i < arguments.length; i++)
|
|
288
|
+
ar = ar.concat(__read(arguments[i]));
|
|
289
|
+
return ar;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
/** @deprecated */
|
|
293
|
+
function __spreadArrays() {
|
|
294
|
+
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
|
|
295
|
+
for (var r = Array(s), k = 0, i = 0; i < il; i++)
|
|
296
|
+
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
|
|
297
|
+
r[k] = a[j];
|
|
298
|
+
return r;
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
function __spreadArray(to, from, pack) {
|
|
302
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
303
|
+
if (ar || !(i in from)) {
|
|
304
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
305
|
+
ar[i] = from[i];
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
function __await(v) {
|
|
312
|
+
return this instanceof __await ? (this.v = v, this) : new __await(v);
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
function __asyncGenerator(thisArg, _arguments, generator) {
|
|
316
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
317
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
318
|
+
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
319
|
+
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
|
|
320
|
+
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
321
|
+
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
322
|
+
function fulfill(value) { resume("next", value); }
|
|
323
|
+
function reject(value) { resume("throw", value); }
|
|
324
|
+
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
function __asyncDelegator(o) {
|
|
328
|
+
var i, p;
|
|
329
|
+
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
|
|
330
|
+
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
function __asyncValues(o) {
|
|
334
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
335
|
+
var m = o[Symbol.asyncIterator], i;
|
|
336
|
+
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);
|
|
337
|
+
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); }); }; }
|
|
338
|
+
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
function __makeTemplateObject(cooked, raw) {
|
|
342
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
343
|
+
return cooked;
|
|
344
|
+
};
|
|
345
|
+
|
|
346
|
+
var __setModuleDefault = Object.create ? (function(o, v) {
|
|
347
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
348
|
+
}) : function(o, v) {
|
|
349
|
+
o["default"] = v;
|
|
350
|
+
};
|
|
351
|
+
|
|
352
|
+
function __importStar(mod) {
|
|
353
|
+
if (mod && mod.__esModule) return mod;
|
|
354
|
+
var result = {};
|
|
355
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
356
|
+
__setModuleDefault(result, mod);
|
|
357
|
+
return result;
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
function __importDefault(mod) {
|
|
361
|
+
return (mod && mod.__esModule) ? mod : { default: mod };
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
function __classPrivateFieldGet(receiver, state, kind, f) {
|
|
365
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
366
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
367
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
function __classPrivateFieldSet(receiver, state, value, kind, f) {
|
|
371
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
372
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
373
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
374
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
function __classPrivateFieldIn(state, receiver) {
|
|
378
|
+
if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object");
|
|
379
|
+
return typeof state === "function" ? receiver === state : state.has(receiver);
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
|
|
383
|
+
/***/ }),
|
|
384
|
+
|
|
99
385
|
/***/ "./lib-esm/ExpoSQLiteAdapter/ExpoSQLiteAdapter.js":
|
|
100
386
|
/*!********************************************************!*\
|
|
101
387
|
!*** ./lib-esm/ExpoSQLiteAdapter/ExpoSQLiteAdapter.js ***!
|
|
@@ -123,196 +409,20 @@ var ExpoSQLiteAdapter = new _common_CommonSQLiteAdapter__WEBPACK_IMPORTED_MODULE
|
|
|
123
409
|
|
|
124
410
|
"use strict";
|
|
125
411
|
__webpack_require__.r(__webpack_exports__);
|
|
126
|
-
/* harmony import */ var
|
|
127
|
-
/* harmony import */ var
|
|
128
|
-
/* harmony import */ var
|
|
129
|
-
/* harmony import */ var
|
|
130
|
-
/* harmony import */ var
|
|
131
|
-
/* harmony import */ var
|
|
132
|
-
/* harmony import */ var
|
|
133
|
-
|
|
134
|
-
function adopt(value) {
|
|
135
|
-
return value instanceof P ? value : new P(function (resolve) {
|
|
136
|
-
resolve(value);
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
141
|
-
function fulfilled(value) {
|
|
142
|
-
try {
|
|
143
|
-
step(generator.next(value));
|
|
144
|
-
} catch (e) {
|
|
145
|
-
reject(e);
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
function rejected(value) {
|
|
150
|
-
try {
|
|
151
|
-
step(generator["throw"](value));
|
|
152
|
-
} catch (e) {
|
|
153
|
-
reject(e);
|
|
154
|
-
}
|
|
155
|
-
}
|
|
412
|
+
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "../../node_modules/tslib/tslib.es6.js");
|
|
413
|
+
/* harmony import */ var _aws_amplify_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @aws-amplify/core */ "@aws-amplify/core");
|
|
414
|
+
/* harmony import */ var _aws_amplify_core__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_aws_amplify_core__WEBPACK_IMPORTED_MODULE_1__);
|
|
415
|
+
/* harmony import */ var expo_file_system__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! expo-file-system */ "expo-file-system");
|
|
416
|
+
/* harmony import */ var expo_file_system__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(expo_file_system__WEBPACK_IMPORTED_MODULE_2__);
|
|
417
|
+
/* harmony import */ var expo_sqlite__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! expo-sqlite */ "expo-sqlite");
|
|
418
|
+
/* harmony import */ var expo_sqlite__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(expo_sqlite__WEBPACK_IMPORTED_MODULE_3__);
|
|
419
|
+
/* harmony import */ var _common_constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../common/constants */ "./lib-esm/common/constants.js");
|
|
156
420
|
|
|
157
|
-
function step(result) {
|
|
158
|
-
result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
|
|
159
|
-
}
|
|
160
421
|
|
|
161
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
162
|
-
});
|
|
163
|
-
};
|
|
164
422
|
|
|
165
|
-
var __generator = undefined && undefined.__generator || function (thisArg, body) {
|
|
166
|
-
var _ = {
|
|
167
|
-
label: 0,
|
|
168
|
-
sent: function sent() {
|
|
169
|
-
if (t[0] & 1) throw t[1];
|
|
170
|
-
return t[1];
|
|
171
|
-
},
|
|
172
|
-
trys: [],
|
|
173
|
-
ops: []
|
|
174
|
-
},
|
|
175
|
-
f,
|
|
176
|
-
y,
|
|
177
|
-
t,
|
|
178
|
-
g;
|
|
179
|
-
return g = {
|
|
180
|
-
next: verb(0),
|
|
181
|
-
"throw": verb(1),
|
|
182
|
-
"return": verb(2)
|
|
183
|
-
}, typeof Symbol === "function" && (g[Symbol.iterator] = function () {
|
|
184
|
-
return this;
|
|
185
|
-
}), g;
|
|
186
423
|
|
|
187
|
-
function verb(n) {
|
|
188
|
-
return function (v) {
|
|
189
|
-
return step([n, v]);
|
|
190
|
-
};
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
function step(op) {
|
|
194
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
195
|
-
|
|
196
|
-
while (_) {
|
|
197
|
-
try {
|
|
198
|
-
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;
|
|
199
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
200
|
-
|
|
201
|
-
switch (op[0]) {
|
|
202
|
-
case 0:
|
|
203
|
-
case 1:
|
|
204
|
-
t = op;
|
|
205
|
-
break;
|
|
206
424
|
|
|
207
|
-
|
|
208
|
-
_.label++;
|
|
209
|
-
return {
|
|
210
|
-
value: op[1],
|
|
211
|
-
done: false
|
|
212
|
-
};
|
|
213
|
-
|
|
214
|
-
case 5:
|
|
215
|
-
_.label++;
|
|
216
|
-
y = op[1];
|
|
217
|
-
op = [0];
|
|
218
|
-
continue;
|
|
219
|
-
|
|
220
|
-
case 7:
|
|
221
|
-
op = _.ops.pop();
|
|
222
|
-
|
|
223
|
-
_.trys.pop();
|
|
224
|
-
|
|
225
|
-
continue;
|
|
226
|
-
|
|
227
|
-
default:
|
|
228
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
229
|
-
_ = 0;
|
|
230
|
-
continue;
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
234
|
-
_.label = op[1];
|
|
235
|
-
break;
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
if (op[0] === 6 && _.label < t[1]) {
|
|
239
|
-
_.label = t[1];
|
|
240
|
-
t = op;
|
|
241
|
-
break;
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
if (t && _.label < t[2]) {
|
|
245
|
-
_.label = t[2];
|
|
246
|
-
|
|
247
|
-
_.ops.push(op);
|
|
248
|
-
|
|
249
|
-
break;
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
if (t[2]) _.ops.pop();
|
|
253
|
-
|
|
254
|
-
_.trys.pop();
|
|
255
|
-
|
|
256
|
-
continue;
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
op = body.call(thisArg, _);
|
|
260
|
-
} catch (e) {
|
|
261
|
-
op = [6, e];
|
|
262
|
-
y = 0;
|
|
263
|
-
} finally {
|
|
264
|
-
f = t = 0;
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
if (op[0] & 5) throw op[1];
|
|
269
|
-
return {
|
|
270
|
-
value: op[0] ? op[1] : void 0,
|
|
271
|
-
done: true
|
|
272
|
-
};
|
|
273
|
-
}
|
|
274
|
-
};
|
|
275
|
-
|
|
276
|
-
var __read = undefined && undefined.__read || function (o, n) {
|
|
277
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
278
|
-
if (!m) return o;
|
|
279
|
-
var i = m.call(o),
|
|
280
|
-
r,
|
|
281
|
-
ar = [],
|
|
282
|
-
e;
|
|
283
|
-
|
|
284
|
-
try {
|
|
285
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
|
|
286
|
-
ar.push(r.value);
|
|
287
|
-
}
|
|
288
|
-
} catch (error) {
|
|
289
|
-
e = {
|
|
290
|
-
error: error
|
|
291
|
-
};
|
|
292
|
-
} finally {
|
|
293
|
-
try {
|
|
294
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
295
|
-
} finally {
|
|
296
|
-
if (e) throw e.error;
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
|
|
300
|
-
return ar;
|
|
301
|
-
};
|
|
302
|
-
|
|
303
|
-
var __spread = undefined && undefined.__spread || function () {
|
|
304
|
-
for (var ar = [], i = 0; i < arguments.length; i++) {
|
|
305
|
-
ar = ar.concat(__read(arguments[i]));
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
return ar;
|
|
309
|
-
};
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
var logger = new _aws_amplify_core__WEBPACK_IMPORTED_MODULE_0__["ConsoleLogger"]('ExpoSQLiteDatabase');
|
|
425
|
+
var logger = new _aws_amplify_core__WEBPACK_IMPORTED_MODULE_1__["ConsoleLogger"]('ExpoSQLiteDatabase');
|
|
316
426
|
/*
|
|
317
427
|
|
|
318
428
|
Note:
|
|
@@ -321,26 +431,19 @@ error was handled or not. Returning a true value indicates the error was handled
|
|
|
321
431
|
rollback the whole transaction.
|
|
322
432
|
|
|
323
433
|
*/
|
|
324
|
-
|
|
325
|
-
var ExpoSQLiteDatabase =
|
|
326
|
-
/** @class */
|
|
327
|
-
function () {
|
|
434
|
+
var ExpoSQLiteDatabase = /** @class */function () {
|
|
328
435
|
function ExpoSQLiteDatabase() {}
|
|
329
|
-
|
|
330
436
|
ExpoSQLiteDatabase.prototype.init = function () {
|
|
331
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
332
|
-
return __generator(this, function (_a) {
|
|
437
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
438
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
333
439
|
// only open database once.
|
|
334
440
|
if (!this.db) {
|
|
335
441
|
// As per expo docs version, description and size arguments are ignored,
|
|
336
442
|
// but are accepted by the function for compatibility with the WebSQL specification.
|
|
337
443
|
// Hence, we do not need those arguments.
|
|
338
|
-
this.db = Object(
|
|
444
|
+
this.db = Object(expo_sqlite__WEBPACK_IMPORTED_MODULE_3__["openDatabase"])(_common_constants__WEBPACK_IMPORTED_MODULE_4__["DB_NAME"]);
|
|
339
445
|
}
|
|
340
|
-
|
|
341
|
-
return [2
|
|
342
|
-
/*return*/
|
|
343
|
-
];
|
|
446
|
+
return [2 /*return*/];
|
|
344
447
|
});
|
|
345
448
|
});
|
|
346
449
|
};
|
|
@@ -348,80 +451,55 @@ function () {
|
|
|
348
451
|
ExpoSQLiteDatabase.prototype.createSchema = function (statements) {
|
|
349
452
|
return this.executeStatements(statements);
|
|
350
453
|
};
|
|
351
|
-
|
|
352
454
|
ExpoSQLiteDatabase.prototype.clear = function () {
|
|
353
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
455
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
354
456
|
var error_1;
|
|
355
|
-
return __generator(this, function (_a) {
|
|
457
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
356
458
|
switch (_a.label) {
|
|
357
459
|
case 0:
|
|
358
460
|
_a.trys.push([0, 3,, 4]);
|
|
359
|
-
|
|
360
461
|
logger.debug('Clearing database');
|
|
361
|
-
return [4
|
|
362
|
-
/*yield*/
|
|
363
|
-
, this.closeDB()];
|
|
364
|
-
|
|
462
|
+
return [4 /*yield*/, this.closeDB()];
|
|
365
463
|
case 1:
|
|
366
|
-
_a.sent();
|
|
464
|
+
_a.sent();
|
|
465
|
+
// delete database is not supported by expo-sqlite.
|
|
367
466
|
// Database file needs to be deleted using deleteAsync from expo-file-system
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
return [4
|
|
371
|
-
/*yield*/
|
|
372
|
-
, Object(expo_file_system__WEBPACK_IMPORTED_MODULE_1__["deleteAsync"])(expo_file_system__WEBPACK_IMPORTED_MODULE_1__["documentDirectory"] + "SQLite/" + _common_constants__WEBPACK_IMPORTED_MODULE_3__["DB_NAME"])];
|
|
373
|
-
|
|
467
|
+
return [4 /*yield*/, Object(expo_file_system__WEBPACK_IMPORTED_MODULE_2__["deleteAsync"])(expo_file_system__WEBPACK_IMPORTED_MODULE_2__["documentDirectory"] + "SQLite/" + _common_constants__WEBPACK_IMPORTED_MODULE_4__["DB_NAME"])];
|
|
374
468
|
case 2:
|
|
375
469
|
// delete database is not supported by expo-sqlite.
|
|
376
470
|
// Database file needs to be deleted using deleteAsync from expo-file-system
|
|
377
471
|
_a.sent();
|
|
378
|
-
|
|
379
472
|
logger.debug('Database cleared');
|
|
380
|
-
return [3
|
|
381
|
-
/*break*/
|
|
382
|
-
, 4];
|
|
383
|
-
|
|
473
|
+
return [3 /*break*/, 4];
|
|
384
474
|
case 3:
|
|
385
475
|
error_1 = _a.sent();
|
|
386
|
-
logger.warn('Error clearing the database.', error_1);
|
|
387
|
-
|
|
476
|
+
logger.warn('Error clearing the database.', error_1);
|
|
477
|
+
// open database if it was closed earlier and this.db was set to undefined.
|
|
388
478
|
this.init();
|
|
389
|
-
return [3
|
|
390
|
-
/*break*/
|
|
391
|
-
, 4];
|
|
392
|
-
|
|
479
|
+
return [3 /*break*/, 4];
|
|
393
480
|
case 4:
|
|
394
|
-
return [2
|
|
395
|
-
/*return*/
|
|
396
|
-
];
|
|
481
|
+
return [2 /*return*/];
|
|
397
482
|
}
|
|
398
483
|
});
|
|
399
484
|
});
|
|
400
485
|
};
|
|
401
486
|
|
|
402
487
|
ExpoSQLiteDatabase.prototype.get = function (statement, params) {
|
|
403
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
488
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
404
489
|
var results;
|
|
405
|
-
return __generator(this, function (_a) {
|
|
490
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
406
491
|
switch (_a.label) {
|
|
407
492
|
case 0:
|
|
408
|
-
return [4
|
|
409
|
-
/*yield*/
|
|
410
|
-
, this.getAll(statement, params)];
|
|
411
|
-
|
|
493
|
+
return [4 /*yield*/, this.getAll(statement, params)];
|
|
412
494
|
case 1:
|
|
413
495
|
results = _a.sent();
|
|
414
|
-
return [2
|
|
415
|
-
/*return*/
|
|
416
|
-
, results[0]];
|
|
496
|
+
return [2 /*return*/, results[0]];
|
|
417
497
|
}
|
|
418
498
|
});
|
|
419
499
|
});
|
|
420
500
|
};
|
|
421
|
-
|
|
422
501
|
ExpoSQLiteDatabase.prototype.getAll = function (statement, params) {
|
|
423
502
|
var _this = this;
|
|
424
|
-
|
|
425
503
|
return new Promise(function (resolve, reject) {
|
|
426
504
|
_this.db.readTransaction(function (transaction) {
|
|
427
505
|
transaction.executeSql(statement, params, function (_, result) {
|
|
@@ -434,10 +512,8 @@ function () {
|
|
|
434
512
|
});
|
|
435
513
|
});
|
|
436
514
|
};
|
|
437
|
-
|
|
438
515
|
ExpoSQLiteDatabase.prototype.save = function (statement, params) {
|
|
439
516
|
var _this = this;
|
|
440
|
-
|
|
441
517
|
return new Promise(function (resolve, reject) {
|
|
442
518
|
_this.db.transaction(function (transaction) {
|
|
443
519
|
transaction.executeSql(statement, params, function () {
|
|
@@ -450,30 +526,23 @@ function () {
|
|
|
450
526
|
});
|
|
451
527
|
});
|
|
452
528
|
};
|
|
453
|
-
|
|
454
529
|
ExpoSQLiteDatabase.prototype.batchQuery = function (queryParameterizedStatements) {
|
|
455
530
|
var _this = this;
|
|
456
|
-
|
|
457
531
|
if (queryParameterizedStatements === void 0) {
|
|
458
532
|
queryParameterizedStatements = new Set();
|
|
459
533
|
}
|
|
460
|
-
|
|
461
534
|
return new Promise(function (resolveTransaction, rejectTransaction) {
|
|
462
535
|
_this.db.transaction(function (transaction) {
|
|
463
|
-
return __awaiter(_this, void 0, void 0, function () {
|
|
536
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(_this, void 0, void 0, function () {
|
|
464
537
|
var results, error_2;
|
|
465
|
-
return __generator(this, function (_a) {
|
|
538
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
466
539
|
switch (_a.label) {
|
|
467
540
|
case 0:
|
|
468
541
|
_a.trys.push([0, 2,, 3]);
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
var _b = __read(_a, 2),
|
|
474
|
-
statement = _b[0],
|
|
475
|
-
params = _b[1];
|
|
476
|
-
|
|
542
|
+
return [4 /*yield*/, Promise.all(Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__spread"])(queryParameterizedStatements).map(function (_a) {
|
|
543
|
+
var _b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(_a, 2),
|
|
544
|
+
statement = _b[0],
|
|
545
|
+
params = _b[1];
|
|
477
546
|
return new Promise(function (resolve, reject) {
|
|
478
547
|
transaction.executeSql(statement, params, function (_, result) {
|
|
479
548
|
resolve(result.rows._array[0]);
|
|
@@ -484,26 +553,17 @@ function () {
|
|
|
484
553
|
});
|
|
485
554
|
});
|
|
486
555
|
}))];
|
|
487
|
-
|
|
488
556
|
case 1:
|
|
489
557
|
results = _a.sent();
|
|
490
558
|
resolveTransaction(results);
|
|
491
|
-
return [3
|
|
492
|
-
/*break*/
|
|
493
|
-
, 3];
|
|
494
|
-
|
|
559
|
+
return [3 /*break*/, 3];
|
|
495
560
|
case 2:
|
|
496
561
|
error_2 = _a.sent();
|
|
497
562
|
rejectTransaction(error_2);
|
|
498
563
|
logger.warn(error_2);
|
|
499
|
-
return [3
|
|
500
|
-
/*break*/
|
|
501
|
-
, 3];
|
|
502
|
-
|
|
564
|
+
return [3 /*break*/, 3];
|
|
503
565
|
case 3:
|
|
504
|
-
return [2
|
|
505
|
-
/*return*/
|
|
506
|
-
];
|
|
566
|
+
return [2 /*return*/];
|
|
507
567
|
}
|
|
508
568
|
});
|
|
509
569
|
});
|
|
@@ -513,28 +573,22 @@ function () {
|
|
|
513
573
|
|
|
514
574
|
ExpoSQLiteDatabase.prototype.batchSave = function (saveParameterizedStatements, deleteParameterizedStatements) {
|
|
515
575
|
var _this = this;
|
|
516
|
-
|
|
517
576
|
if (saveParameterizedStatements === void 0) {
|
|
518
577
|
saveParameterizedStatements = new Set();
|
|
519
578
|
}
|
|
520
|
-
|
|
521
579
|
return new Promise(function (resolveTransaction, rejectTransaction) {
|
|
522
580
|
_this.db.transaction(function (transaction) {
|
|
523
|
-
return __awaiter(_this, void 0, void 0, function () {
|
|
581
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(_this, void 0, void 0, function () {
|
|
524
582
|
var error_3;
|
|
525
|
-
return __generator(this, function (_a) {
|
|
583
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
526
584
|
switch (_a.label) {
|
|
527
585
|
case 0:
|
|
528
|
-
_a.trys.push([0, 4,, 5]);
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
var _b = __read(_a, 2),
|
|
535
|
-
statement = _b[0],
|
|
536
|
-
params = _b[1];
|
|
537
|
-
|
|
586
|
+
_a.trys.push([0, 4,, 5]);
|
|
587
|
+
// await for all sql statements promises to resolve
|
|
588
|
+
return [4 /*yield*/, Promise.all(Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__spread"])(saveParameterizedStatements).map(function (_a) {
|
|
589
|
+
var _b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(_a, 2),
|
|
590
|
+
statement = _b[0],
|
|
591
|
+
params = _b[1];
|
|
538
592
|
return new Promise(function (resolve, reject) {
|
|
539
593
|
transaction.executeSql(statement, params, function () {
|
|
540
594
|
resolve(null);
|
|
@@ -545,21 +599,14 @@ function () {
|
|
|
545
599
|
});
|
|
546
600
|
});
|
|
547
601
|
}))];
|
|
548
|
-
|
|
549
602
|
case 1:
|
|
550
603
|
// await for all sql statements promises to resolve
|
|
551
604
|
_a.sent();
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
/*yield*/
|
|
558
|
-
, Promise.all(__spread(deleteParameterizedStatements).map(function (_a) {
|
|
559
|
-
var _b = __read(_a, 2),
|
|
560
|
-
statement = _b[0],
|
|
561
|
-
params = _b[1];
|
|
562
|
-
|
|
605
|
+
if (!deleteParameterizedStatements) return [3 /*break*/, 3];
|
|
606
|
+
return [4 /*yield*/, Promise.all(Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__spread"])(deleteParameterizedStatements).map(function (_a) {
|
|
607
|
+
var _b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(_a, 2),
|
|
608
|
+
statement = _b[0],
|
|
609
|
+
params = _b[1];
|
|
563
610
|
return new Promise(function (resolve, reject) {
|
|
564
611
|
return transaction.executeSql(statement, params, function () {
|
|
565
612
|
resolve(null);
|
|
@@ -570,30 +617,19 @@ function () {
|
|
|
570
617
|
});
|
|
571
618
|
});
|
|
572
619
|
}))];
|
|
573
|
-
|
|
574
620
|
case 2:
|
|
575
621
|
_a.sent();
|
|
576
|
-
|
|
577
622
|
_a.label = 3;
|
|
578
|
-
|
|
579
623
|
case 3:
|
|
580
624
|
resolveTransaction(null);
|
|
581
|
-
return [3
|
|
582
|
-
/*break*/
|
|
583
|
-
, 5];
|
|
584
|
-
|
|
625
|
+
return [3 /*break*/, 5];
|
|
585
626
|
case 4:
|
|
586
627
|
error_3 = _a.sent();
|
|
587
628
|
rejectTransaction(error_3);
|
|
588
629
|
logger.warn(error_3);
|
|
589
|
-
return [3
|
|
590
|
-
/*break*/
|
|
591
|
-
, 5];
|
|
592
|
-
|
|
630
|
+
return [3 /*break*/, 5];
|
|
593
631
|
case 5:
|
|
594
|
-
return [2
|
|
595
|
-
/*return*/
|
|
596
|
-
];
|
|
632
|
+
return [2 /*return*/];
|
|
597
633
|
}
|
|
598
634
|
});
|
|
599
635
|
});
|
|
@@ -603,27 +639,21 @@ function () {
|
|
|
603
639
|
|
|
604
640
|
ExpoSQLiteDatabase.prototype.selectAndDelete = function (queryParameterizedStatement, deleteParameterizedStatement) {
|
|
605
641
|
var _this = this;
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
deleteStatement = _b[0],
|
|
613
|
-
deleteParams = _b[1];
|
|
614
|
-
|
|
642
|
+
var _a = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(queryParameterizedStatement, 2),
|
|
643
|
+
queryStatement = _a[0],
|
|
644
|
+
queryParams = _a[1];
|
|
645
|
+
var _b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(deleteParameterizedStatement, 2),
|
|
646
|
+
deleteStatement = _b[0],
|
|
647
|
+
deleteParams = _b[1];
|
|
615
648
|
return new Promise(function (resolveTransaction, rejectTransaction) {
|
|
616
649
|
_this.db.transaction(function (transaction) {
|
|
617
|
-
return __awaiter(_this, void 0, void 0, function () {
|
|
650
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(_this, void 0, void 0, function () {
|
|
618
651
|
var result, error_4;
|
|
619
|
-
return __generator(this, function (_a) {
|
|
652
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
620
653
|
switch (_a.label) {
|
|
621
654
|
case 0:
|
|
622
655
|
_a.trys.push([0, 3,, 4]);
|
|
623
|
-
|
|
624
|
-
return [4
|
|
625
|
-
/*yield*/
|
|
626
|
-
, new Promise(function (resolve, reject) {
|
|
656
|
+
return [4 /*yield*/, new Promise(function (resolve, reject) {
|
|
627
657
|
transaction.executeSql(queryStatement, queryParams, function (_, result) {
|
|
628
658
|
resolve(result.rows._array || []);
|
|
629
659
|
}, function (_, error) {
|
|
@@ -632,12 +662,9 @@ function () {
|
|
|
632
662
|
return true;
|
|
633
663
|
});
|
|
634
664
|
})];
|
|
635
|
-
|
|
636
665
|
case 1:
|
|
637
666
|
result = _a.sent();
|
|
638
|
-
return [4
|
|
639
|
-
/*yield*/
|
|
640
|
-
, new Promise(function (resolve, reject) {
|
|
667
|
+
return [4 /*yield*/, new Promise(function (resolve, reject) {
|
|
641
668
|
transaction.executeSql(deleteStatement, deleteParams, function () {
|
|
642
669
|
resolve(null);
|
|
643
670
|
}, function (_, error) {
|
|
@@ -646,27 +673,17 @@ function () {
|
|
|
646
673
|
return true;
|
|
647
674
|
});
|
|
648
675
|
})];
|
|
649
|
-
|
|
650
676
|
case 2:
|
|
651
677
|
_a.sent();
|
|
652
|
-
|
|
653
678
|
resolveTransaction(result);
|
|
654
|
-
return [3
|
|
655
|
-
/*break*/
|
|
656
|
-
, 4];
|
|
657
|
-
|
|
679
|
+
return [3 /*break*/, 4];
|
|
658
680
|
case 3:
|
|
659
681
|
error_4 = _a.sent();
|
|
660
682
|
rejectTransaction(error_4);
|
|
661
683
|
logger.warn(error_4);
|
|
662
|
-
return [3
|
|
663
|
-
/*break*/
|
|
664
|
-
, 4];
|
|
665
|
-
|
|
684
|
+
return [3 /*break*/, 4];
|
|
666
685
|
case 4:
|
|
667
|
-
return [2
|
|
668
|
-
/*return*/
|
|
669
|
-
];
|
|
686
|
+
return [2 /*return*/];
|
|
670
687
|
}
|
|
671
688
|
});
|
|
672
689
|
});
|
|
@@ -676,19 +693,15 @@ function () {
|
|
|
676
693
|
|
|
677
694
|
ExpoSQLiteDatabase.prototype.executeStatements = function (statements) {
|
|
678
695
|
var _this = this;
|
|
679
|
-
|
|
680
696
|
return new Promise(function (resolveTransaction, rejectTransaction) {
|
|
681
697
|
_this.db.transaction(function (transaction) {
|
|
682
|
-
return __awaiter(_this, void 0, void 0, function () {
|
|
698
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(_this, void 0, void 0, function () {
|
|
683
699
|
var error_5;
|
|
684
|
-
return __generator(this, function (_a) {
|
|
700
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
685
701
|
switch (_a.label) {
|
|
686
702
|
case 0:
|
|
687
703
|
_a.trys.push([0, 2,, 3]);
|
|
688
|
-
|
|
689
|
-
return [4
|
|
690
|
-
/*yield*/
|
|
691
|
-
, Promise.all(statements.map(function (statement) {
|
|
704
|
+
return [4 /*yield*/, Promise.all(statements.map(function (statement) {
|
|
692
705
|
return new Promise(function (resolve, reject) {
|
|
693
706
|
transaction.executeSql(statement, [], function () {
|
|
694
707
|
resolve(null);
|
|
@@ -698,27 +711,17 @@ function () {
|
|
|
698
711
|
});
|
|
699
712
|
});
|
|
700
713
|
}))];
|
|
701
|
-
|
|
702
714
|
case 1:
|
|
703
715
|
_a.sent();
|
|
704
|
-
|
|
705
716
|
resolveTransaction(null);
|
|
706
|
-
return [3
|
|
707
|
-
/*break*/
|
|
708
|
-
, 3];
|
|
709
|
-
|
|
717
|
+
return [3 /*break*/, 3];
|
|
710
718
|
case 2:
|
|
711
719
|
error_5 = _a.sent();
|
|
712
720
|
rejectTransaction(error_5);
|
|
713
721
|
logger.warn(error_5);
|
|
714
|
-
return [3
|
|
715
|
-
/*break*/
|
|
716
|
-
, 3];
|
|
717
|
-
|
|
722
|
+
return [3 /*break*/, 3];
|
|
718
723
|
case 3:
|
|
719
|
-
return [2
|
|
720
|
-
/*return*/
|
|
721
|
-
];
|
|
724
|
+
return [2 /*return*/];
|
|
722
725
|
}
|
|
723
726
|
});
|
|
724
727
|
});
|
|
@@ -727,33 +730,24 @@ function () {
|
|
|
727
730
|
};
|
|
728
731
|
|
|
729
732
|
ExpoSQLiteDatabase.prototype.closeDB = function () {
|
|
730
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
731
|
-
return __generator(this, function (_a) {
|
|
733
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
734
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
732
735
|
switch (_a.label) {
|
|
733
736
|
case 0:
|
|
734
|
-
if (!this.db) return [3
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
logger.debug('Closing Database'); // closing database is not supported by expo-sqlite.
|
|
737
|
+
if (!this.db) return [3 /*break*/, 2];
|
|
738
|
+
logger.debug('Closing Database');
|
|
739
|
+
// closing database is not supported by expo-sqlite.
|
|
738
740
|
// Workaround is to access the private db variable and call the close() method.
|
|
739
|
-
|
|
740
|
-
return [4
|
|
741
|
-
/*yield*/
|
|
742
|
-
, this.db._db.close()];
|
|
743
|
-
|
|
741
|
+
return [4 /*yield*/, this.db._db.close()];
|
|
744
742
|
case 1:
|
|
745
743
|
// closing database is not supported by expo-sqlite.
|
|
746
744
|
// Workaround is to access the private db variable and call the close() method.
|
|
747
745
|
_a.sent();
|
|
748
|
-
|
|
749
746
|
logger.debug('Database closed');
|
|
750
747
|
this.db = undefined;
|
|
751
748
|
_a.label = 2;
|
|
752
|
-
|
|
753
749
|
case 2:
|
|
754
|
-
return [2
|
|
755
|
-
/*return*/
|
|
756
|
-
];
|
|
750
|
+
return [2 /*return*/];
|
|
757
751
|
}
|
|
758
752
|
});
|
|
759
753
|
});
|
|
@@ -761,7 +755,6 @@ function () {
|
|
|
761
755
|
|
|
762
756
|
return ExpoSQLiteDatabase;
|
|
763
757
|
}();
|
|
764
|
-
|
|
765
758
|
/* harmony default export */ __webpack_exports__["default"] = (ExpoSQLiteDatabase);
|
|
766
759
|
|
|
767
760
|
/***/ }),
|
|
@@ -776,333 +769,80 @@ function () {
|
|
|
776
769
|
"use strict";
|
|
777
770
|
__webpack_require__.r(__webpack_exports__);
|
|
778
771
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CommonSQLiteAdapter", function() { return CommonSQLiteAdapter; });
|
|
779
|
-
/* harmony import */ var
|
|
780
|
-
/* harmony import */ var
|
|
781
|
-
/* harmony import */ var
|
|
782
|
-
/* harmony import */ var
|
|
783
|
-
/* harmony import */ var
|
|
784
|
-
|
|
785
|
-
function adopt(value) {
|
|
786
|
-
return value instanceof P ? value : new P(function (resolve) {
|
|
787
|
-
resolve(value);
|
|
788
|
-
});
|
|
789
|
-
}
|
|
772
|
+
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "../../node_modules/tslib/tslib.es6.js");
|
|
773
|
+
/* harmony import */ var _aws_amplify_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @aws-amplify/core */ "@aws-amplify/core");
|
|
774
|
+
/* harmony import */ var _aws_amplify_core__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_aws_amplify_core__WEBPACK_IMPORTED_MODULE_1__);
|
|
775
|
+
/* harmony import */ var _common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../common/SQLiteUtils */ "./lib-esm/common/SQLiteUtils.js");
|
|
776
|
+
/* harmony import */ var _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @aws-amplify/datastore */ "@aws-amplify/datastore");
|
|
777
|
+
/* harmony import */ var _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__);
|
|
790
778
|
|
|
791
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
792
|
-
function fulfilled(value) {
|
|
793
|
-
try {
|
|
794
|
-
step(generator.next(value));
|
|
795
|
-
} catch (e) {
|
|
796
|
-
reject(e);
|
|
797
|
-
}
|
|
798
|
-
}
|
|
799
|
-
|
|
800
|
-
function rejected(value) {
|
|
801
|
-
try {
|
|
802
|
-
step(generator["throw"](value));
|
|
803
|
-
} catch (e) {
|
|
804
|
-
reject(e);
|
|
805
|
-
}
|
|
806
|
-
}
|
|
807
|
-
|
|
808
|
-
function step(result) {
|
|
809
|
-
result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
|
|
810
|
-
}
|
|
811
|
-
|
|
812
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
813
|
-
});
|
|
814
|
-
};
|
|
815
|
-
|
|
816
|
-
var __generator = undefined && undefined.__generator || function (thisArg, body) {
|
|
817
|
-
var _ = {
|
|
818
|
-
label: 0,
|
|
819
|
-
sent: function sent() {
|
|
820
|
-
if (t[0] & 1) throw t[1];
|
|
821
|
-
return t[1];
|
|
822
|
-
},
|
|
823
|
-
trys: [],
|
|
824
|
-
ops: []
|
|
825
|
-
},
|
|
826
|
-
f,
|
|
827
|
-
y,
|
|
828
|
-
t,
|
|
829
|
-
g;
|
|
830
|
-
return g = {
|
|
831
|
-
next: verb(0),
|
|
832
|
-
"throw": verb(1),
|
|
833
|
-
"return": verb(2)
|
|
834
|
-
}, typeof Symbol === "function" && (g[Symbol.iterator] = function () {
|
|
835
|
-
return this;
|
|
836
|
-
}), g;
|
|
837
|
-
|
|
838
|
-
function verb(n) {
|
|
839
|
-
return function (v) {
|
|
840
|
-
return step([n, v]);
|
|
841
|
-
};
|
|
842
|
-
}
|
|
843
|
-
|
|
844
|
-
function step(op) {
|
|
845
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
846
|
-
|
|
847
|
-
while (_) {
|
|
848
|
-
try {
|
|
849
|
-
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;
|
|
850
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
851
|
-
|
|
852
|
-
switch (op[0]) {
|
|
853
|
-
case 0:
|
|
854
|
-
case 1:
|
|
855
|
-
t = op;
|
|
856
|
-
break;
|
|
857
|
-
|
|
858
|
-
case 4:
|
|
859
|
-
_.label++;
|
|
860
|
-
return {
|
|
861
|
-
value: op[1],
|
|
862
|
-
done: false
|
|
863
|
-
};
|
|
864
|
-
|
|
865
|
-
case 5:
|
|
866
|
-
_.label++;
|
|
867
|
-
y = op[1];
|
|
868
|
-
op = [0];
|
|
869
|
-
continue;
|
|
870
|
-
|
|
871
|
-
case 7:
|
|
872
|
-
op = _.ops.pop();
|
|
873
|
-
|
|
874
|
-
_.trys.pop();
|
|
875
|
-
|
|
876
|
-
continue;
|
|
877
|
-
|
|
878
|
-
default:
|
|
879
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
880
|
-
_ = 0;
|
|
881
|
-
continue;
|
|
882
|
-
}
|
|
883
|
-
|
|
884
|
-
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
885
|
-
_.label = op[1];
|
|
886
|
-
break;
|
|
887
|
-
}
|
|
888
|
-
|
|
889
|
-
if (op[0] === 6 && _.label < t[1]) {
|
|
890
|
-
_.label = t[1];
|
|
891
|
-
t = op;
|
|
892
|
-
break;
|
|
893
|
-
}
|
|
894
779
|
|
|
895
|
-
if (t && _.label < t[2]) {
|
|
896
|
-
_.label = t[2];
|
|
897
780
|
|
|
898
|
-
_.ops.push(op);
|
|
899
781
|
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
_.trys.pop();
|
|
906
|
-
|
|
907
|
-
continue;
|
|
908
|
-
}
|
|
909
|
-
|
|
910
|
-
op = body.call(thisArg, _);
|
|
911
|
-
} catch (e) {
|
|
912
|
-
op = [6, e];
|
|
913
|
-
y = 0;
|
|
914
|
-
} finally {
|
|
915
|
-
f = t = 0;
|
|
916
|
-
}
|
|
917
|
-
}
|
|
918
|
-
|
|
919
|
-
if (op[0] & 5) throw op[1];
|
|
920
|
-
return {
|
|
921
|
-
value: op[0] ? op[1] : void 0,
|
|
922
|
-
done: true
|
|
923
|
-
};
|
|
924
|
-
}
|
|
925
|
-
};
|
|
926
|
-
|
|
927
|
-
var __asyncValues = undefined && undefined.__asyncValues || function (o) {
|
|
928
|
-
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
929
|
-
var m = o[Symbol.asyncIterator],
|
|
930
|
-
i;
|
|
931
|
-
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 () {
|
|
932
|
-
return this;
|
|
933
|
-
}, i);
|
|
934
|
-
|
|
935
|
-
function verb(n) {
|
|
936
|
-
i[n] = o[n] && function (v) {
|
|
937
|
-
return new Promise(function (resolve, reject) {
|
|
938
|
-
v = o[n](v), settle(resolve, reject, v.done, v.value);
|
|
939
|
-
});
|
|
940
|
-
};
|
|
941
|
-
}
|
|
942
|
-
|
|
943
|
-
function settle(resolve, reject, d, v) {
|
|
944
|
-
Promise.resolve(v).then(function (v) {
|
|
945
|
-
resolve({
|
|
946
|
-
value: v,
|
|
947
|
-
done: d
|
|
948
|
-
});
|
|
949
|
-
}, reject);
|
|
950
|
-
}
|
|
951
|
-
};
|
|
952
|
-
|
|
953
|
-
var __read = undefined && undefined.__read || function (o, n) {
|
|
954
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
955
|
-
if (!m) return o;
|
|
956
|
-
var i = m.call(o),
|
|
957
|
-
r,
|
|
958
|
-
ar = [],
|
|
959
|
-
e;
|
|
960
|
-
|
|
961
|
-
try {
|
|
962
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
|
|
963
|
-
ar.push(r.value);
|
|
964
|
-
}
|
|
965
|
-
} catch (error) {
|
|
966
|
-
e = {
|
|
967
|
-
error: error
|
|
968
|
-
};
|
|
969
|
-
} finally {
|
|
970
|
-
try {
|
|
971
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
972
|
-
} finally {
|
|
973
|
-
if (e) throw e.error;
|
|
974
|
-
}
|
|
975
|
-
}
|
|
976
|
-
|
|
977
|
-
return ar;
|
|
978
|
-
};
|
|
979
|
-
|
|
980
|
-
var __values = undefined && undefined.__values || function (o) {
|
|
981
|
-
var s = typeof Symbol === "function" && Symbol.iterator,
|
|
982
|
-
m = s && o[s],
|
|
983
|
-
i = 0;
|
|
984
|
-
if (m) return m.call(o);
|
|
985
|
-
if (o && typeof o.length === "number") return {
|
|
986
|
-
next: function next() {
|
|
987
|
-
if (o && i >= o.length) o = void 0;
|
|
988
|
-
return {
|
|
989
|
-
value: o && o[i++],
|
|
990
|
-
done: !o
|
|
991
|
-
};
|
|
992
|
-
}
|
|
993
|
-
};
|
|
994
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
995
|
-
};
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
var traverseModel = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_2__["utils"].traverseModel,
|
|
1001
|
-
validatePredicate = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_2__["utils"].validatePredicate,
|
|
1002
|
-
isModelConstructor = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_2__["utils"].isModelConstructor;
|
|
1003
|
-
var logger = new _aws_amplify_core__WEBPACK_IMPORTED_MODULE_0__["ConsoleLogger"]('DataStore');
|
|
1004
|
-
|
|
1005
|
-
var CommonSQLiteAdapter =
|
|
1006
|
-
/** @class */
|
|
1007
|
-
function () {
|
|
782
|
+
var traverseModel = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["utils"].traverseModel,
|
|
783
|
+
validatePredicate = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["utils"].validatePredicate,
|
|
784
|
+
isModelConstructor = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["utils"].isModelConstructor;
|
|
785
|
+
var logger = new _aws_amplify_core__WEBPACK_IMPORTED_MODULE_1__["ConsoleLogger"]('DataStore');
|
|
786
|
+
var CommonSQLiteAdapter = /** @class */function () {
|
|
1008
787
|
function CommonSQLiteAdapter(db) {
|
|
1009
788
|
this.db = db;
|
|
1010
789
|
}
|
|
1011
|
-
|
|
1012
790
|
CommonSQLiteAdapter.prototype.setUp = function (theSchema, namespaceResolver, modelInstanceCreator, getModelConstructorByModelName) {
|
|
1013
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
791
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
1014
792
|
var statements, error_1;
|
|
1015
|
-
|
|
1016
793
|
var _this = this;
|
|
1017
|
-
|
|
1018
|
-
return __generator(this, function (_a) {
|
|
794
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
1019
795
|
switch (_a.label) {
|
|
1020
796
|
case 0:
|
|
1021
|
-
if (!!this.initPromise) return [3
|
|
1022
|
-
/*break*/
|
|
1023
|
-
, 1];
|
|
797
|
+
if (!!this.initPromise) return [3 /*break*/, 1];
|
|
1024
798
|
this.initPromise = new Promise(function (res, rej) {
|
|
1025
799
|
_this.resolve = res;
|
|
1026
800
|
_this.reject = rej;
|
|
1027
801
|
});
|
|
1028
|
-
return [3
|
|
1029
|
-
/*break*/
|
|
1030
|
-
, 3];
|
|
1031
|
-
|
|
802
|
+
return [3 /*break*/, 3];
|
|
1032
803
|
case 1:
|
|
1033
|
-
return [4
|
|
1034
|
-
/*yield*/
|
|
1035
|
-
, this.initPromise];
|
|
1036
|
-
|
|
804
|
+
return [4 /*yield*/, this.initPromise];
|
|
1037
805
|
case 2:
|
|
1038
806
|
_a.sent();
|
|
1039
|
-
|
|
1040
|
-
return [2
|
|
1041
|
-
/*return*/
|
|
1042
|
-
];
|
|
1043
|
-
|
|
807
|
+
return [2 /*return*/];
|
|
1044
808
|
case 3:
|
|
1045
809
|
this.schema = theSchema;
|
|
1046
810
|
this.namespaceResolver = namespaceResolver;
|
|
1047
811
|
this.modelInstanceCreator = modelInstanceCreator;
|
|
1048
812
|
this.getModelConstructorByModelName = getModelConstructorByModelName;
|
|
1049
813
|
_a.label = 4;
|
|
1050
|
-
|
|
1051
814
|
case 4:
|
|
1052
815
|
_a.trys.push([4, 7,, 8]);
|
|
1053
|
-
|
|
1054
|
-
return [4
|
|
1055
|
-
/*yield*/
|
|
1056
|
-
, this.db.init()];
|
|
1057
|
-
|
|
816
|
+
return [4 /*yield*/, this.db.init()];
|
|
1058
817
|
case 5:
|
|
1059
818
|
_a.sent();
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
return [4
|
|
1063
|
-
/*yield*/
|
|
1064
|
-
, this.db.createSchema(statements)];
|
|
1065
|
-
|
|
819
|
+
statements = Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["generateSchemaStatements"])(this.schema);
|
|
820
|
+
return [4 /*yield*/, this.db.createSchema(statements)];
|
|
1066
821
|
case 6:
|
|
1067
822
|
_a.sent();
|
|
1068
|
-
|
|
1069
823
|
this.resolve();
|
|
1070
|
-
return [3
|
|
1071
|
-
/*break*/
|
|
1072
|
-
, 8];
|
|
1073
|
-
|
|
824
|
+
return [3 /*break*/, 8];
|
|
1074
825
|
case 7:
|
|
1075
826
|
error_1 = _a.sent();
|
|
1076
827
|
this.reject(error_1);
|
|
1077
|
-
return [3
|
|
1078
|
-
/*break*/
|
|
1079
|
-
, 8];
|
|
1080
|
-
|
|
828
|
+
return [3 /*break*/, 8];
|
|
1081
829
|
case 8:
|
|
1082
|
-
return [2
|
|
1083
|
-
/*return*/
|
|
1084
|
-
];
|
|
830
|
+
return [2 /*return*/];
|
|
1085
831
|
}
|
|
1086
832
|
});
|
|
1087
833
|
});
|
|
1088
834
|
};
|
|
1089
835
|
|
|
1090
836
|
CommonSQLiteAdapter.prototype.clear = function () {
|
|
1091
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1092
|
-
return __generator(this, function (_a) {
|
|
837
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
838
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
1093
839
|
switch (_a.label) {
|
|
1094
840
|
case 0:
|
|
1095
|
-
return [4
|
|
1096
|
-
/*yield*/
|
|
1097
|
-
, this.db.clear()];
|
|
1098
|
-
|
|
841
|
+
return [4 /*yield*/, this.db.clear()];
|
|
1099
842
|
case 1:
|
|
1100
843
|
_a.sent();
|
|
1101
|
-
|
|
1102
844
|
this.initPromise = undefined;
|
|
1103
|
-
return [2
|
|
1104
|
-
/*return*/
|
|
1105
|
-
];
|
|
845
|
+
return [2 /*return*/];
|
|
1106
846
|
}
|
|
1107
847
|
});
|
|
1108
848
|
});
|
|
@@ -1110,11 +850,9 @@ function () {
|
|
|
1110
850
|
|
|
1111
851
|
CommonSQLiteAdapter.prototype.save = function (model, condition) {
|
|
1112
852
|
var e_1, _a;
|
|
1113
|
-
|
|
1114
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
853
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
1115
854
|
var modelConstructor, tableName, connectedModels, connectionStoreNames, _b, queryStatement, params, fromDB, predicates, predicateObjs, type, isValid, msg, result, saveStatements, connectionStoreNames_1, connectionStoreNames_1_1, resItem, modelName, item, instance, id, _c, queryStatement_1, params_1, fromDB_1, opType, saveStatement, e_1_1;
|
|
1116
|
-
|
|
1117
|
-
return __generator(this, function (_d) {
|
|
855
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_d) {
|
|
1118
856
|
switch (_d.label) {
|
|
1119
857
|
case 0:
|
|
1120
858
|
modelConstructor = Object.getPrototypeOf(model).constructor;
|
|
@@ -1122,27 +860,22 @@ function () {
|
|
|
1122
860
|
connectedModels = traverseModel(modelConstructor.name, model, this.schema.namespaces[this.namespaceResolver(modelConstructor)], this.modelInstanceCreator, this.getModelConstructorByModelName);
|
|
1123
861
|
connectionStoreNames = Object.values(connectedModels).map(function (_a) {
|
|
1124
862
|
var modelName = _a.modelName,
|
|
1125
|
-
|
|
1126
|
-
|
|
863
|
+
item = _a.item,
|
|
864
|
+
instance = _a.instance;
|
|
1127
865
|
return {
|
|
1128
866
|
modelName: modelName,
|
|
1129
867
|
item: item,
|
|
1130
868
|
instance: instance
|
|
1131
869
|
};
|
|
1132
870
|
});
|
|
1133
|
-
_b = __read(Object(
|
|
1134
|
-
return [4
|
|
1135
|
-
/*yield*/
|
|
1136
|
-
, this.db.get(queryStatement, params)];
|
|
1137
|
-
|
|
871
|
+
_b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["queryByIdStatement"])(model.id, tableName), 2), queryStatement = _b[0], params = _b[1];
|
|
872
|
+
return [4 /*yield*/, this.db.get(queryStatement, params)];
|
|
1138
873
|
case 1:
|
|
1139
874
|
fromDB = _d.sent();
|
|
1140
|
-
|
|
1141
875
|
if (condition && fromDB) {
|
|
1142
|
-
predicates =
|
|
876
|
+
predicates = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["ModelPredicateCreator"].getPredicates(condition);
|
|
1143
877
|
predicateObjs = predicates.predicates, type = predicates.type;
|
|
1144
878
|
isValid = validatePredicate(fromDB, type, predicateObjs);
|
|
1145
|
-
|
|
1146
879
|
if (!isValid) {
|
|
1147
880
|
msg = 'Conditional update failed';
|
|
1148
881
|
logger.error(msg, {
|
|
@@ -1152,123 +885,71 @@ function () {
|
|
|
1152
885
|
throw new Error(msg);
|
|
1153
886
|
}
|
|
1154
887
|
}
|
|
1155
|
-
|
|
1156
888
|
result = [];
|
|
1157
889
|
saveStatements = new Set();
|
|
1158
890
|
_d.label = 2;
|
|
1159
|
-
|
|
1160
891
|
case 2:
|
|
1161
892
|
_d.trys.push([2, 8, 9, 14]);
|
|
1162
|
-
|
|
1163
|
-
connectionStoreNames_1 = __asyncValues(connectionStoreNames);
|
|
893
|
+
connectionStoreNames_1 = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__asyncValues"])(connectionStoreNames);
|
|
1164
894
|
_d.label = 3;
|
|
1165
|
-
|
|
1166
895
|
case 3:
|
|
1167
|
-
return [4
|
|
1168
|
-
/*yield*/
|
|
1169
|
-
, connectionStoreNames_1.next()];
|
|
1170
|
-
|
|
896
|
+
return [4 /*yield*/, connectionStoreNames_1.next()];
|
|
1171
897
|
case 4:
|
|
1172
|
-
if (!(connectionStoreNames_1_1 = _d.sent(), !connectionStoreNames_1_1.done)) return [3
|
|
1173
|
-
/*break*/
|
|
1174
|
-
, 7];
|
|
898
|
+
if (!(connectionStoreNames_1_1 = _d.sent(), !connectionStoreNames_1_1.done)) return [3 /*break*/, 7];
|
|
1175
899
|
resItem = connectionStoreNames_1_1.value;
|
|
1176
900
|
modelName = resItem.modelName, item = resItem.item, instance = resItem.instance;
|
|
1177
901
|
id = item.id;
|
|
1178
|
-
_c = __read(Object(
|
|
1179
|
-
return [4
|
|
1180
|
-
/*yield*/
|
|
1181
|
-
, this.db.get(queryStatement_1, params_1)];
|
|
1182
|
-
|
|
902
|
+
_c = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["queryByIdStatement"])(id, modelName), 2), queryStatement_1 = _c[0], params_1 = _c[1];
|
|
903
|
+
return [4 /*yield*/, this.db.get(queryStatement_1, params_1)];
|
|
1183
904
|
case 5:
|
|
1184
905
|
fromDB_1 = _d.sent();
|
|
1185
|
-
opType = fromDB_1 === undefined ?
|
|
1186
|
-
saveStatement = fromDB_1 ? Object(
|
|
1187
|
-
|
|
1188
|
-
if (id === model.id || opType === _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_2__["OpType"].INSERT) {
|
|
906
|
+
opType = fromDB_1 === undefined ? _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["OpType"].INSERT : _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["OpType"].UPDATE;
|
|
907
|
+
saveStatement = fromDB_1 ? Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["modelUpdateStatement"])(instance, modelName) : Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["modelInsertStatement"])(instance, modelName);
|
|
908
|
+
if (id === model.id || opType === _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["OpType"].INSERT) {
|
|
1189
909
|
saveStatements.add(saveStatement);
|
|
1190
910
|
result.push([instance, opType]);
|
|
1191
911
|
}
|
|
1192
|
-
|
|
1193
912
|
_d.label = 6;
|
|
1194
|
-
|
|
1195
913
|
case 6:
|
|
1196
|
-
return [3
|
|
1197
|
-
/*break*/
|
|
1198
|
-
, 3];
|
|
1199
|
-
|
|
914
|
+
return [3 /*break*/, 3];
|
|
1200
915
|
case 7:
|
|
1201
|
-
return [3
|
|
1202
|
-
/*break*/
|
|
1203
|
-
, 14];
|
|
1204
|
-
|
|
916
|
+
return [3 /*break*/, 14];
|
|
1205
917
|
case 8:
|
|
1206
918
|
e_1_1 = _d.sent();
|
|
1207
919
|
e_1 = {
|
|
1208
920
|
error: e_1_1
|
|
1209
921
|
};
|
|
1210
|
-
return [3
|
|
1211
|
-
/*break*/
|
|
1212
|
-
, 14];
|
|
1213
|
-
|
|
922
|
+
return [3 /*break*/, 14];
|
|
1214
923
|
case 9:
|
|
1215
924
|
_d.trys.push([9,, 12, 13]);
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
/*break*/
|
|
1219
|
-
, 11];
|
|
1220
|
-
return [4
|
|
1221
|
-
/*yield*/
|
|
1222
|
-
, _a.call(connectionStoreNames_1)];
|
|
1223
|
-
|
|
925
|
+
if (!(connectionStoreNames_1_1 && !connectionStoreNames_1_1.done && (_a = connectionStoreNames_1["return"]))) return [3 /*break*/, 11];
|
|
926
|
+
return [4 /*yield*/, _a.call(connectionStoreNames_1)];
|
|
1224
927
|
case 10:
|
|
1225
928
|
_d.sent();
|
|
1226
|
-
|
|
1227
929
|
_d.label = 11;
|
|
1228
|
-
|
|
1229
930
|
case 11:
|
|
1230
|
-
return [3
|
|
1231
|
-
/*break*/
|
|
1232
|
-
, 13];
|
|
1233
|
-
|
|
931
|
+
return [3 /*break*/, 13];
|
|
1234
932
|
case 12:
|
|
1235
933
|
if (e_1) throw e_1.error;
|
|
1236
|
-
return [7
|
|
1237
|
-
/*endfinally*/
|
|
1238
|
-
];
|
|
1239
|
-
|
|
934
|
+
return [7 /*endfinally*/];
|
|
1240
935
|
case 13:
|
|
1241
|
-
return [7
|
|
1242
|
-
/*endfinally*/
|
|
1243
|
-
];
|
|
1244
|
-
|
|
936
|
+
return [7 /*endfinally*/];
|
|
1245
937
|
case 14:
|
|
1246
|
-
return [4
|
|
1247
|
-
/*yield*/
|
|
1248
|
-
, this.db.batchSave(saveStatements)];
|
|
1249
|
-
|
|
938
|
+
return [4 /*yield*/, this.db.batchSave(saveStatements)];
|
|
1250
939
|
case 15:
|
|
1251
940
|
_d.sent();
|
|
1252
|
-
|
|
1253
|
-
return [2
|
|
1254
|
-
/*return*/
|
|
1255
|
-
, result];
|
|
941
|
+
return [2 /*return*/, result];
|
|
1256
942
|
}
|
|
1257
943
|
});
|
|
1258
944
|
});
|
|
1259
945
|
};
|
|
1260
|
-
|
|
1261
946
|
CommonSQLiteAdapter.prototype.load = function (namespaceName, srcModelName, records) {
|
|
1262
947
|
var records_1, records_1_1, records_2, records_2_1;
|
|
1263
|
-
|
|
1264
948
|
var e_2, _a, e_3, _b, e_4, _c;
|
|
1265
|
-
|
|
1266
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
949
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
1267
950
|
var namespace, relations, connectionTableNames, modelConstructor, relations_1, relations_1_1, relation, fieldName, tableName, targetName, relationType, modelConstructor_1, _d, recordItem, getByfield, _e, queryStatement, params, connectionRecord, e_3_1, recordItem, _f, queryStatement, params, connectionRecord, e_4_1, _, e_2_1;
|
|
1268
|
-
|
|
1269
951
|
var _this = this;
|
|
1270
|
-
|
|
1271
|
-
return __generator(this, function (_g) {
|
|
952
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_g) {
|
|
1272
953
|
switch (_g.label) {
|
|
1273
954
|
case 0:
|
|
1274
955
|
namespace = this.schema.namespaces[namespaceName];
|
|
@@ -1278,489 +959,284 @@ function () {
|
|
|
1278
959
|
return modelName;
|
|
1279
960
|
});
|
|
1280
961
|
modelConstructor = this.getModelConstructorByModelName(namespaceName, srcModelName);
|
|
1281
|
-
|
|
1282
962
|
if (connectionTableNames.length === 0) {
|
|
1283
|
-
return [2
|
|
1284
|
-
/*return*/
|
|
1285
|
-
, records.map(function (record) {
|
|
963
|
+
return [2 /*return*/, records.map(function (record) {
|
|
1286
964
|
return _this.modelInstanceCreator(modelConstructor, record);
|
|
1287
965
|
})];
|
|
1288
966
|
}
|
|
1289
|
-
|
|
1290
967
|
_g.label = 1;
|
|
1291
|
-
|
|
1292
968
|
case 1:
|
|
1293
969
|
_g.trys.push([1, 34, 35, 40]);
|
|
1294
|
-
|
|
1295
|
-
relations_1 = __asyncValues(relations);
|
|
970
|
+
relations_1 = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__asyncValues"])(relations);
|
|
1296
971
|
_g.label = 2;
|
|
1297
|
-
|
|
1298
972
|
case 2:
|
|
1299
|
-
return [4
|
|
1300
|
-
/*yield*/
|
|
1301
|
-
, relations_1.next()];
|
|
1302
|
-
|
|
973
|
+
return [4 /*yield*/, relations_1.next()];
|
|
1303
974
|
case 3:
|
|
1304
|
-
if (!(relations_1_1 = _g.sent(), !relations_1_1.done)) return [3
|
|
1305
|
-
/*break*/
|
|
1306
|
-
, 33];
|
|
975
|
+
if (!(relations_1_1 = _g.sent(), !relations_1_1.done)) return [3 /*break*/, 33];
|
|
1307
976
|
relation = relations_1_1.value;
|
|
1308
977
|
fieldName = relation.fieldName, tableName = relation.modelName, targetName = relation.targetName, relationType = relation.relationType;
|
|
1309
978
|
modelConstructor_1 = this.getModelConstructorByModelName(namespaceName, tableName);
|
|
1310
979
|
_d = relationType;
|
|
1311
|
-
|
|
1312
980
|
switch (_d) {
|
|
1313
981
|
case 'HAS_ONE':
|
|
1314
|
-
return [3
|
|
1315
|
-
/*break*/
|
|
1316
|
-
, 4];
|
|
1317
|
-
|
|
982
|
+
return [3 /*break*/, 4];
|
|
1318
983
|
case 'BELONGS_TO':
|
|
1319
|
-
return [3
|
|
1320
|
-
/*break*/
|
|
1321
|
-
, 17];
|
|
1322
|
-
|
|
984
|
+
return [3 /*break*/, 17];
|
|
1323
985
|
case 'HAS_MANY':
|
|
1324
|
-
return [3
|
|
1325
|
-
/*break*/
|
|
1326
|
-
, 30];
|
|
986
|
+
return [3 /*break*/, 30];
|
|
1327
987
|
}
|
|
1328
|
-
|
|
1329
|
-
return [3
|
|
1330
|
-
/*break*/
|
|
1331
|
-
, 31];
|
|
1332
|
-
|
|
988
|
+
return [3 /*break*/, 31];
|
|
1333
989
|
case 4:
|
|
1334
990
|
_g.trys.push([4, 10, 11, 16]);
|
|
1335
|
-
|
|
1336
|
-
records_1 = __asyncValues(records);
|
|
991
|
+
records_1 = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__asyncValues"])(records);
|
|
1337
992
|
_g.label = 5;
|
|
1338
|
-
|
|
1339
993
|
case 5:
|
|
1340
|
-
return [4
|
|
1341
|
-
/*yield*/
|
|
1342
|
-
, records_1.next()];
|
|
1343
|
-
|
|
994
|
+
return [4 /*yield*/, records_1.next()];
|
|
1344
995
|
case 6:
|
|
1345
|
-
if (!(records_1_1 = _g.sent(), !records_1_1.done)) return [3
|
|
1346
|
-
/*break*/
|
|
1347
|
-
, 9];
|
|
996
|
+
if (!(records_1_1 = _g.sent(), !records_1_1.done)) return [3 /*break*/, 9];
|
|
1348
997
|
recordItem = records_1_1.value;
|
|
1349
998
|
getByfield = recordItem[targetName] ? targetName : fieldName;
|
|
1350
|
-
if (!recordItem[getByfield]) return [3
|
|
1351
|
-
|
|
1352
|
-
,
|
|
1353
|
-
_e = __read(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_1__["queryByIdStatement"])(recordItem[getByfield], tableName), 2), queryStatement = _e[0], params = _e[1];
|
|
1354
|
-
return [4
|
|
1355
|
-
/*yield*/
|
|
1356
|
-
, this.db.get(queryStatement, params)];
|
|
1357
|
-
|
|
999
|
+
if (!recordItem[getByfield]) return [3 /*break*/, 9];
|
|
1000
|
+
_e = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["queryByIdStatement"])(recordItem[getByfield], tableName), 2), queryStatement = _e[0], params = _e[1];
|
|
1001
|
+
return [4 /*yield*/, this.db.get(queryStatement, params)];
|
|
1358
1002
|
case 7:
|
|
1359
1003
|
connectionRecord = _g.sent();
|
|
1360
1004
|
recordItem[fieldName] = connectionRecord && this.modelInstanceCreator(modelConstructor_1, connectionRecord);
|
|
1361
1005
|
_g.label = 8;
|
|
1362
|
-
|
|
1363
1006
|
case 8:
|
|
1364
|
-
return [3
|
|
1365
|
-
/*break*/
|
|
1366
|
-
, 5];
|
|
1367
|
-
|
|
1007
|
+
return [3 /*break*/, 5];
|
|
1368
1008
|
case 9:
|
|
1369
|
-
return [3
|
|
1370
|
-
/*break*/
|
|
1371
|
-
, 16];
|
|
1372
|
-
|
|
1009
|
+
return [3 /*break*/, 16];
|
|
1373
1010
|
case 10:
|
|
1374
1011
|
e_3_1 = _g.sent();
|
|
1375
1012
|
e_3 = {
|
|
1376
1013
|
error: e_3_1
|
|
1377
1014
|
};
|
|
1378
|
-
return [3
|
|
1379
|
-
/*break*/
|
|
1380
|
-
, 16];
|
|
1381
|
-
|
|
1015
|
+
return [3 /*break*/, 16];
|
|
1382
1016
|
case 11:
|
|
1383
1017
|
_g.trys.push([11,, 14, 15]);
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
/*break*/
|
|
1387
|
-
, 13];
|
|
1388
|
-
return [4
|
|
1389
|
-
/*yield*/
|
|
1390
|
-
, _b.call(records_1)];
|
|
1391
|
-
|
|
1018
|
+
if (!(records_1_1 && !records_1_1.done && (_b = records_1["return"]))) return [3 /*break*/, 13];
|
|
1019
|
+
return [4 /*yield*/, _b.call(records_1)];
|
|
1392
1020
|
case 12:
|
|
1393
1021
|
_g.sent();
|
|
1394
|
-
|
|
1395
1022
|
_g.label = 13;
|
|
1396
|
-
|
|
1397
1023
|
case 13:
|
|
1398
|
-
return [3
|
|
1399
|
-
/*break*/
|
|
1400
|
-
, 15];
|
|
1401
|
-
|
|
1024
|
+
return [3 /*break*/, 15];
|
|
1402
1025
|
case 14:
|
|
1403
1026
|
if (e_3) throw e_3.error;
|
|
1404
|
-
return [7
|
|
1405
|
-
/*endfinally*/
|
|
1406
|
-
];
|
|
1407
|
-
|
|
1027
|
+
return [7 /*endfinally*/];
|
|
1408
1028
|
case 15:
|
|
1409
|
-
return [7
|
|
1410
|
-
/*endfinally*/
|
|
1411
|
-
];
|
|
1412
|
-
|
|
1029
|
+
return [7 /*endfinally*/];
|
|
1413
1030
|
case 16:
|
|
1414
|
-
return [3
|
|
1415
|
-
/*break*/
|
|
1416
|
-
, 32];
|
|
1417
|
-
|
|
1031
|
+
return [3 /*break*/, 32];
|
|
1418
1032
|
case 17:
|
|
1419
1033
|
_g.trys.push([17, 23, 24, 29]);
|
|
1420
|
-
|
|
1421
|
-
records_2 = __asyncValues(records);
|
|
1034
|
+
records_2 = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__asyncValues"])(records);
|
|
1422
1035
|
_g.label = 18;
|
|
1423
|
-
|
|
1424
1036
|
case 18:
|
|
1425
|
-
return [4
|
|
1426
|
-
/*yield*/
|
|
1427
|
-
, records_2.next()];
|
|
1428
|
-
|
|
1037
|
+
return [4 /*yield*/, records_2.next()];
|
|
1429
1038
|
case 19:
|
|
1430
|
-
if (!(records_2_1 = _g.sent(), !records_2_1.done)) return [3
|
|
1431
|
-
/*break*/
|
|
1432
|
-
, 22];
|
|
1039
|
+
if (!(records_2_1 = _g.sent(), !records_2_1.done)) return [3 /*break*/, 22];
|
|
1433
1040
|
recordItem = records_2_1.value;
|
|
1434
|
-
if (!recordItem[targetName]) return [3
|
|
1435
|
-
|
|
1436
|
-
,
|
|
1437
|
-
_f = __read(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_1__["queryByIdStatement"])(recordItem[targetName], tableName), 2), queryStatement = _f[0], params = _f[1];
|
|
1438
|
-
return [4
|
|
1439
|
-
/*yield*/
|
|
1440
|
-
, this.db.get(queryStatement, params)];
|
|
1441
|
-
|
|
1041
|
+
if (!recordItem[targetName]) return [3 /*break*/, 21];
|
|
1042
|
+
_f = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["queryByIdStatement"])(recordItem[targetName], tableName), 2), queryStatement = _f[0], params = _f[1];
|
|
1043
|
+
return [4 /*yield*/, this.db.get(queryStatement, params)];
|
|
1442
1044
|
case 20:
|
|
1443
1045
|
connectionRecord = _g.sent();
|
|
1444
1046
|
recordItem[fieldName] = connectionRecord && this.modelInstanceCreator(modelConstructor_1, connectionRecord);
|
|
1445
1047
|
delete recordItem[targetName];
|
|
1446
1048
|
_g.label = 21;
|
|
1447
|
-
|
|
1448
1049
|
case 21:
|
|
1449
|
-
return [3
|
|
1450
|
-
/*break*/
|
|
1451
|
-
, 18];
|
|
1452
|
-
|
|
1050
|
+
return [3 /*break*/, 18];
|
|
1453
1051
|
case 22:
|
|
1454
|
-
return [3
|
|
1455
|
-
/*break*/
|
|
1456
|
-
, 29];
|
|
1457
|
-
|
|
1052
|
+
return [3 /*break*/, 29];
|
|
1458
1053
|
case 23:
|
|
1459
1054
|
e_4_1 = _g.sent();
|
|
1460
1055
|
e_4 = {
|
|
1461
1056
|
error: e_4_1
|
|
1462
1057
|
};
|
|
1463
|
-
return [3
|
|
1464
|
-
/*break*/
|
|
1465
|
-
, 29];
|
|
1466
|
-
|
|
1058
|
+
return [3 /*break*/, 29];
|
|
1467
1059
|
case 24:
|
|
1468
1060
|
_g.trys.push([24,, 27, 28]);
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
/*break*/
|
|
1472
|
-
, 26];
|
|
1473
|
-
return [4
|
|
1474
|
-
/*yield*/
|
|
1475
|
-
, _c.call(records_2)];
|
|
1476
|
-
|
|
1061
|
+
if (!(records_2_1 && !records_2_1.done && (_c = records_2["return"]))) return [3 /*break*/, 26];
|
|
1062
|
+
return [4 /*yield*/, _c.call(records_2)];
|
|
1477
1063
|
case 25:
|
|
1478
1064
|
_g.sent();
|
|
1479
|
-
|
|
1480
1065
|
_g.label = 26;
|
|
1481
|
-
|
|
1482
1066
|
case 26:
|
|
1483
|
-
return [3
|
|
1484
|
-
/*break*/
|
|
1485
|
-
, 28];
|
|
1486
|
-
|
|
1067
|
+
return [3 /*break*/, 28];
|
|
1487
1068
|
case 27:
|
|
1488
1069
|
if (e_4) throw e_4.error;
|
|
1489
|
-
return [7
|
|
1490
|
-
/*endfinally*/
|
|
1491
|
-
];
|
|
1492
|
-
|
|
1070
|
+
return [7 /*endfinally*/];
|
|
1493
1071
|
case 28:
|
|
1494
|
-
return [7
|
|
1495
|
-
/*endfinally*/
|
|
1496
|
-
];
|
|
1497
|
-
|
|
1072
|
+
return [7 /*endfinally*/];
|
|
1498
1073
|
case 29:
|
|
1499
|
-
return [3
|
|
1500
|
-
/*break*/
|
|
1501
|
-
, 32];
|
|
1502
|
-
|
|
1074
|
+
return [3 /*break*/, 32];
|
|
1503
1075
|
case 30:
|
|
1504
1076
|
// TODO: Lazy loading
|
|
1505
|
-
return [3
|
|
1506
|
-
/*break*/
|
|
1507
|
-
, 32];
|
|
1508
|
-
|
|
1077
|
+
return [3 /*break*/, 32];
|
|
1509
1078
|
case 31:
|
|
1510
1079
|
_ = relationType;
|
|
1511
1080
|
throw new Error("invalid relation type " + relationType);
|
|
1512
|
-
|
|
1513
1081
|
case 32:
|
|
1514
|
-
return [3
|
|
1515
|
-
/*break*/
|
|
1516
|
-
, 2];
|
|
1517
|
-
|
|
1082
|
+
return [3 /*break*/, 2];
|
|
1518
1083
|
case 33:
|
|
1519
|
-
return [3
|
|
1520
|
-
/*break*/
|
|
1521
|
-
, 40];
|
|
1522
|
-
|
|
1084
|
+
return [3 /*break*/, 40];
|
|
1523
1085
|
case 34:
|
|
1524
1086
|
e_2_1 = _g.sent();
|
|
1525
1087
|
e_2 = {
|
|
1526
1088
|
error: e_2_1
|
|
1527
1089
|
};
|
|
1528
|
-
return [3
|
|
1529
|
-
/*break*/
|
|
1530
|
-
, 40];
|
|
1531
|
-
|
|
1090
|
+
return [3 /*break*/, 40];
|
|
1532
1091
|
case 35:
|
|
1533
1092
|
_g.trys.push([35,, 38, 39]);
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
/*break*/
|
|
1537
|
-
, 37];
|
|
1538
|
-
return [4
|
|
1539
|
-
/*yield*/
|
|
1540
|
-
, _a.call(relations_1)];
|
|
1541
|
-
|
|
1093
|
+
if (!(relations_1_1 && !relations_1_1.done && (_a = relations_1["return"]))) return [3 /*break*/, 37];
|
|
1094
|
+
return [4 /*yield*/, _a.call(relations_1)];
|
|
1542
1095
|
case 36:
|
|
1543
1096
|
_g.sent();
|
|
1544
|
-
|
|
1545
1097
|
_g.label = 37;
|
|
1546
|
-
|
|
1547
1098
|
case 37:
|
|
1548
|
-
return [3
|
|
1549
|
-
/*break*/
|
|
1550
|
-
, 39];
|
|
1551
|
-
|
|
1099
|
+
return [3 /*break*/, 39];
|
|
1552
1100
|
case 38:
|
|
1553
1101
|
if (e_2) throw e_2.error;
|
|
1554
|
-
return [7
|
|
1555
|
-
/*endfinally*/
|
|
1556
|
-
];
|
|
1557
|
-
|
|
1102
|
+
return [7 /*endfinally*/];
|
|
1558
1103
|
case 39:
|
|
1559
|
-
return [7
|
|
1560
|
-
/*endfinally*/
|
|
1561
|
-
];
|
|
1562
|
-
|
|
1104
|
+
return [7 /*endfinally*/];
|
|
1563
1105
|
case 40:
|
|
1564
|
-
return [2
|
|
1565
|
-
/*return*/
|
|
1566
|
-
, records.map(function (record) {
|
|
1106
|
+
return [2 /*return*/, records.map(function (record) {
|
|
1567
1107
|
return _this.modelInstanceCreator(modelConstructor, record);
|
|
1568
1108
|
})];
|
|
1569
1109
|
}
|
|
1570
1110
|
});
|
|
1571
1111
|
});
|
|
1572
1112
|
};
|
|
1573
|
-
|
|
1574
1113
|
CommonSQLiteAdapter.prototype.query = function (modelConstructor, predicate, pagination) {
|
|
1575
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1114
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
1576
1115
|
var tableName, namespaceName, predicates, sortPredicates, limit, page, queryById, records;
|
|
1577
|
-
|
|
1578
1116
|
var _this = this;
|
|
1579
|
-
|
|
1580
|
-
return __generator(this, function (_a) {
|
|
1117
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_a) {
|
|
1581
1118
|
switch (_a.label) {
|
|
1582
1119
|
case 0:
|
|
1583
1120
|
tableName = modelConstructor.name;
|
|
1584
1121
|
namespaceName = this.namespaceResolver(modelConstructor);
|
|
1585
|
-
predicates = predicate &&
|
|
1586
|
-
sortPredicates = pagination && pagination.sort &&
|
|
1122
|
+
predicates = predicate && _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["ModelPredicateCreator"].getPredicates(predicate);
|
|
1123
|
+
sortPredicates = pagination && pagination.sort && _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["ModelSortPredicateCreator"].getPredicates(pagination.sort);
|
|
1587
1124
|
limit = pagination && pagination.limit;
|
|
1588
1125
|
page = limit && pagination.page;
|
|
1589
1126
|
queryById = predicates && this.idFromPredicate(predicates);
|
|
1590
|
-
return [4
|
|
1591
|
-
|
|
1592
|
-
, function () {
|
|
1593
|
-
return __awaiter(_this, void 0, void 0, function () {
|
|
1127
|
+
return [4 /*yield*/, function () {
|
|
1128
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(_this, void 0, void 0, function () {
|
|
1594
1129
|
var record, _a, queryStatement, params;
|
|
1595
|
-
|
|
1596
|
-
return __generator(this, function (_b) {
|
|
1130
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_b) {
|
|
1597
1131
|
switch (_b.label) {
|
|
1598
1132
|
case 0:
|
|
1599
|
-
if (!queryById) return [3
|
|
1600
|
-
/*
|
|
1601
|
-
, 2];
|
|
1602
|
-
return [4
|
|
1603
|
-
/*yield*/
|
|
1604
|
-
, this.getById(tableName, queryById)];
|
|
1605
|
-
|
|
1133
|
+
if (!queryById) return [3 /*break*/, 2];
|
|
1134
|
+
return [4 /*yield*/, this.getById(tableName, queryById)];
|
|
1606
1135
|
case 1:
|
|
1607
1136
|
record = _b.sent();
|
|
1608
|
-
return [2
|
|
1609
|
-
/*return*/
|
|
1610
|
-
, record ? [record] : []];
|
|
1611
|
-
|
|
1137
|
+
return [2 /*return*/, record ? [record] : []];
|
|
1612
1138
|
case 2:
|
|
1613
|
-
_a = __read(Object(
|
|
1614
|
-
return [4
|
|
1615
|
-
/*yield*/
|
|
1616
|
-
, this.db.getAll(queryStatement, params)];
|
|
1617
|
-
|
|
1139
|
+
_a = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["queryAllStatement"])(tableName, predicates, sortPredicates, limit, page), 2), queryStatement = _a[0], params = _a[1];
|
|
1140
|
+
return [4 /*yield*/, this.db.getAll(queryStatement, params)];
|
|
1618
1141
|
case 3:
|
|
1619
|
-
return [2
|
|
1620
|
-
/*return*/
|
|
1621
|
-
, _b.sent()];
|
|
1142
|
+
return [2 /*return*/, _b.sent()];
|
|
1622
1143
|
}
|
|
1623
1144
|
});
|
|
1624
1145
|
});
|
|
1625
1146
|
}()];
|
|
1626
|
-
|
|
1627
1147
|
case 1:
|
|
1628
1148
|
records = _a.sent();
|
|
1629
|
-
return [4
|
|
1630
|
-
/*yield*/
|
|
1631
|
-
, this.load(namespaceName, modelConstructor.name, records)];
|
|
1632
|
-
|
|
1149
|
+
return [4 /*yield*/, this.load(namespaceName, modelConstructor.name, records)];
|
|
1633
1150
|
case 2:
|
|
1634
|
-
return [2
|
|
1635
|
-
/*return*/
|
|
1636
|
-
, _a.sent()];
|
|
1151
|
+
return [2 /*return*/, _a.sent()];
|
|
1637
1152
|
}
|
|
1638
1153
|
});
|
|
1639
1154
|
});
|
|
1640
1155
|
};
|
|
1641
|
-
|
|
1642
1156
|
CommonSQLiteAdapter.prototype.getById = function (tableName, id) {
|
|
1643
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1157
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
1644
1158
|
var _a, queryStatement, params, record;
|
|
1645
|
-
|
|
1646
|
-
return __generator(this, function (_b) {
|
|
1159
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_b) {
|
|
1647
1160
|
switch (_b.label) {
|
|
1648
1161
|
case 0:
|
|
1649
|
-
_a = __read(Object(
|
|
1650
|
-
return [4
|
|
1651
|
-
/*yield*/
|
|
1652
|
-
, this.db.get(queryStatement, params)];
|
|
1653
|
-
|
|
1162
|
+
_a = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["queryByIdStatement"])(id, tableName), 2), queryStatement = _a[0], params = _a[1];
|
|
1163
|
+
return [4 /*yield*/, this.db.get(queryStatement, params)];
|
|
1654
1164
|
case 1:
|
|
1655
1165
|
record = _b.sent();
|
|
1656
|
-
return [2
|
|
1657
|
-
/*return*/
|
|
1658
|
-
, record];
|
|
1166
|
+
return [2 /*return*/, record];
|
|
1659
1167
|
}
|
|
1660
1168
|
});
|
|
1661
1169
|
});
|
|
1662
1170
|
};
|
|
1663
|
-
|
|
1664
1171
|
CommonSQLiteAdapter.prototype.idFromPredicate = function (predicates) {
|
|
1665
1172
|
var predicateObjs = predicates.predicates;
|
|
1666
1173
|
var idPredicate = predicateObjs.length === 1 && predicateObjs.find(function (p) {
|
|
1667
|
-
return Object(
|
|
1174
|
+
return Object(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["isPredicateObj"])(p) && p.field === 'id' && p.operator === 'eq';
|
|
1668
1175
|
});
|
|
1669
1176
|
return idPredicate && idPredicate.operand;
|
|
1670
1177
|
};
|
|
1671
|
-
|
|
1672
1178
|
CommonSQLiteAdapter.prototype.queryOne = function (modelConstructor, firstOrLast) {
|
|
1673
1179
|
if (firstOrLast === void 0) {
|
|
1674
|
-
firstOrLast =
|
|
1180
|
+
firstOrLast = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["QueryOne"].FIRST;
|
|
1675
1181
|
}
|
|
1676
|
-
|
|
1677
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1182
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
1678
1183
|
var tableName, _a, queryStatement, params, result, modelInstance;
|
|
1679
|
-
|
|
1680
|
-
return __generator(this, function (_b) {
|
|
1184
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_b) {
|
|
1681
1185
|
switch (_b.label) {
|
|
1682
1186
|
case 0:
|
|
1683
1187
|
tableName = modelConstructor.name;
|
|
1684
|
-
_a = __read(Object(
|
|
1685
|
-
return [4
|
|
1686
|
-
/*yield*/
|
|
1687
|
-
, this.db.get(queryStatement, params)];
|
|
1688
|
-
|
|
1188
|
+
_a = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["queryOneStatement"])(firstOrLast, tableName), 2), queryStatement = _a[0], params = _a[1];
|
|
1189
|
+
return [4 /*yield*/, this.db.get(queryStatement, params)];
|
|
1689
1190
|
case 1:
|
|
1690
1191
|
result = _b.sent();
|
|
1691
1192
|
modelInstance = result && this.modelInstanceCreator(modelConstructor, result);
|
|
1692
|
-
return [2
|
|
1693
|
-
/*return*/
|
|
1694
|
-
, modelInstance];
|
|
1193
|
+
return [2 /*return*/, modelInstance];
|
|
1695
1194
|
}
|
|
1696
1195
|
});
|
|
1697
1196
|
});
|
|
1698
|
-
};
|
|
1197
|
+
};
|
|
1198
|
+
// Currently does not cascade
|
|
1699
1199
|
// TODO: use FKs in relations and have `ON DELETE CASCADE` set
|
|
1700
1200
|
// For Has Many and Has One relations to have SQL handle cascades automatically
|
|
1701
|
-
|
|
1702
|
-
|
|
1703
1201
|
CommonSQLiteAdapter.prototype["delete"] = function (modelOrModelConstructor, condition) {
|
|
1704
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1202
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
1705
1203
|
var modelConstructor, namespaceName, tableName, predicates, queryStatement, deleteStatement, models, modelInstances, model, modelConstructor, tableName, _a, queryStatement, params, fromDB, msg, predicates, predicateObjs, type, isValid, msg, _b, deleteStatement, deleteParams, _c, deleteStatement, params;
|
|
1706
|
-
|
|
1707
|
-
return __generator(this, function (_d) {
|
|
1204
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_d) {
|
|
1708
1205
|
switch (_d.label) {
|
|
1709
1206
|
case 0:
|
|
1710
|
-
if (!isModelConstructor(modelOrModelConstructor)) return [3
|
|
1711
|
-
/*break*/
|
|
1712
|
-
, 3];
|
|
1207
|
+
if (!isModelConstructor(modelOrModelConstructor)) return [3 /*break*/, 3];
|
|
1713
1208
|
modelConstructor = modelOrModelConstructor;
|
|
1714
1209
|
namespaceName = this.namespaceResolver(modelConstructor);
|
|
1715
1210
|
tableName = modelConstructor.name;
|
|
1716
|
-
predicates = condition &&
|
|
1717
|
-
queryStatement = Object(
|
|
1718
|
-
deleteStatement = Object(
|
|
1719
|
-
return [4
|
|
1720
|
-
/*yield*/
|
|
1721
|
-
, this.db.selectAndDelete(queryStatement, deleteStatement)];
|
|
1722
|
-
|
|
1211
|
+
predicates = condition && _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["ModelPredicateCreator"].getPredicates(condition);
|
|
1212
|
+
queryStatement = Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["queryAllStatement"])(tableName, predicates);
|
|
1213
|
+
deleteStatement = Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["deleteByPredicateStatement"])(tableName, predicates);
|
|
1214
|
+
return [4 /*yield*/, this.db.selectAndDelete(queryStatement, deleteStatement)];
|
|
1723
1215
|
case 1:
|
|
1724
1216
|
models = _d.sent();
|
|
1725
|
-
return [4
|
|
1726
|
-
/*yield*/
|
|
1727
|
-
, this.load(namespaceName, modelConstructor.name, models)];
|
|
1728
|
-
|
|
1217
|
+
return [4 /*yield*/, this.load(namespaceName, modelConstructor.name, models)];
|
|
1729
1218
|
case 2:
|
|
1730
1219
|
modelInstances = _d.sent();
|
|
1731
|
-
return [2
|
|
1732
|
-
/*return*/
|
|
1733
|
-
, [modelInstances, modelInstances]];
|
|
1734
|
-
|
|
1220
|
+
return [2 /*return*/, [modelInstances, modelInstances]];
|
|
1735
1221
|
case 3:
|
|
1736
1222
|
model = modelOrModelConstructor;
|
|
1737
1223
|
modelConstructor = Object.getPrototypeOf(model).constructor;
|
|
1738
1224
|
tableName = modelConstructor.name;
|
|
1739
|
-
if (!condition) return [3
|
|
1740
|
-
|
|
1741
|
-
,
|
|
1742
|
-
_a = __read(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_1__["queryByIdStatement"])(model.id, tableName), 2), queryStatement = _a[0], params = _a[1];
|
|
1743
|
-
return [4
|
|
1744
|
-
/*yield*/
|
|
1745
|
-
, this.db.get(queryStatement, params)];
|
|
1746
|
-
|
|
1225
|
+
if (!condition) return [3 /*break*/, 6];
|
|
1226
|
+
_a = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["queryByIdStatement"])(model.id, tableName), 2), queryStatement = _a[0], params = _a[1];
|
|
1227
|
+
return [4 /*yield*/, this.db.get(queryStatement, params)];
|
|
1747
1228
|
case 4:
|
|
1748
1229
|
fromDB = _d.sent();
|
|
1749
|
-
|
|
1750
1230
|
if (fromDB === undefined) {
|
|
1751
1231
|
msg = 'Model instance not found in storage';
|
|
1752
1232
|
logger.warn(msg, {
|
|
1753
1233
|
model: model
|
|
1754
1234
|
});
|
|
1755
|
-
return [2
|
|
1756
|
-
/*return*/
|
|
1757
|
-
, [[model], []]];
|
|
1235
|
+
return [2 /*return*/, [[model], []]];
|
|
1758
1236
|
}
|
|
1759
|
-
|
|
1760
|
-
predicates = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_2__["ModelPredicateCreator"].getPredicates(condition);
|
|
1237
|
+
predicates = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["ModelPredicateCreator"].getPredicates(condition);
|
|
1761
1238
|
predicateObjs = predicates.predicates, type = predicates.type;
|
|
1762
1239
|
isValid = validatePredicate(fromDB, type, predicateObjs);
|
|
1763
|
-
|
|
1764
1240
|
if (!isValid) {
|
|
1765
1241
|
msg = 'Conditional update failed';
|
|
1766
1242
|
logger.error(msg, {
|
|
@@ -1769,43 +1245,26 @@ function () {
|
|
|
1769
1245
|
});
|
|
1770
1246
|
throw new Error(msg);
|
|
1771
1247
|
}
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
return [4
|
|
1775
|
-
/*yield*/
|
|
1776
|
-
, this.db.save(deleteStatement, deleteParams)];
|
|
1777
|
-
|
|
1248
|
+
_b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["deleteByIdStatement"])(model.id, tableName), 2), deleteStatement = _b[0], deleteParams = _b[1];
|
|
1249
|
+
return [4 /*yield*/, this.db.save(deleteStatement, deleteParams)];
|
|
1778
1250
|
case 5:
|
|
1779
1251
|
_d.sent();
|
|
1780
|
-
|
|
1781
|
-
return [2
|
|
1782
|
-
/*return*/
|
|
1783
|
-
, [[model], [model]]];
|
|
1784
|
-
|
|
1252
|
+
return [2 /*return*/, [[model], [model]]];
|
|
1785
1253
|
case 6:
|
|
1786
|
-
_c = __read(Object(
|
|
1787
|
-
return [4
|
|
1788
|
-
/*yield*/
|
|
1789
|
-
, this.db.save(deleteStatement, params)];
|
|
1790
|
-
|
|
1254
|
+
_c = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["deleteByIdStatement"])(model.id, tableName), 2), deleteStatement = _c[0], params = _c[1];
|
|
1255
|
+
return [4 /*yield*/, this.db.save(deleteStatement, params)];
|
|
1791
1256
|
case 7:
|
|
1792
1257
|
_d.sent();
|
|
1793
|
-
|
|
1794
|
-
return [2
|
|
1795
|
-
/*return*/
|
|
1796
|
-
, [[model], [model]]];
|
|
1258
|
+
return [2 /*return*/, [[model], [model]]];
|
|
1797
1259
|
}
|
|
1798
1260
|
});
|
|
1799
1261
|
});
|
|
1800
1262
|
};
|
|
1801
|
-
|
|
1802
1263
|
CommonSQLiteAdapter.prototype.batchSave = function (modelConstructor, items) {
|
|
1803
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1264
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"])(this, void 0, void 0, function () {
|
|
1804
1265
|
var tableName, result, itemsToSave, queryStatements, deleteStatements, saveStatements, _loop_1, this_1, items_1, items_1_1, item, queryResponses;
|
|
1805
|
-
|
|
1806
1266
|
var e_5, _a;
|
|
1807
|
-
|
|
1808
|
-
return __generator(this, function (_b) {
|
|
1267
|
+
return Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"])(this, function (_b) {
|
|
1809
1268
|
switch (_b.label) {
|
|
1810
1269
|
case 0:
|
|
1811
1270
|
tableName = modelConstructor.name;
|
|
@@ -1814,36 +1273,31 @@ function () {
|
|
|
1814
1273
|
queryStatements = new Set();
|
|
1815
1274
|
deleteStatements = new Set();
|
|
1816
1275
|
saveStatements = new Set();
|
|
1817
|
-
|
|
1818
1276
|
_loop_1 = function _loop_1(item) {
|
|
1819
1277
|
var connectedModels = traverseModel(modelConstructor.name, this_1.modelInstanceCreator(modelConstructor, item), this_1.schema.namespaces[this_1.namespaceResolver(modelConstructor)], this_1.modelInstanceCreator, this_1.getModelConstructorByModelName);
|
|
1820
1278
|
var id = item.id,
|
|
1821
|
-
|
|
1279
|
+
_deleted = item._deleted;
|
|
1822
1280
|
var instance = connectedModels.find(function (_a) {
|
|
1823
1281
|
var instance = _a.instance;
|
|
1824
1282
|
return instance.id === id;
|
|
1825
1283
|
}).instance;
|
|
1826
|
-
|
|
1827
1284
|
if (_deleted) {
|
|
1828
1285
|
// create the delete statements right away
|
|
1829
|
-
var deleteStatement = Object(
|
|
1286
|
+
var deleteStatement = Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["deleteByIdStatement"])(instance.id, tableName);
|
|
1830
1287
|
deleteStatements.add(deleteStatement);
|
|
1831
|
-
result.push([item,
|
|
1288
|
+
result.push([item, _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["OpType"].DELETE]);
|
|
1832
1289
|
} else {
|
|
1833
1290
|
// query statements for the saves at first
|
|
1834
|
-
var queryStatement = Object(
|
|
1835
|
-
queryStatements.add(queryStatement);
|
|
1836
|
-
|
|
1291
|
+
var queryStatement = Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["queryByIdStatement"])(id, tableName);
|
|
1292
|
+
queryStatements.add(queryStatement);
|
|
1293
|
+
// combination of insert and update items
|
|
1837
1294
|
itemsToSave.push(instance);
|
|
1838
1295
|
}
|
|
1839
1296
|
};
|
|
1840
|
-
|
|
1841
1297
|
this_1 = this;
|
|
1842
|
-
|
|
1843
1298
|
try {
|
|
1844
|
-
for (items_1 = __values(items), items_1_1 = items_1.next(); !items_1_1.done; items_1_1 = items_1.next()) {
|
|
1299
|
+
for (items_1 = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__values"])(items), items_1_1 = items_1.next(); !items_1_1.done; items_1_1 = items_1.next()) {
|
|
1845
1300
|
item = items_1_1.value;
|
|
1846
|
-
|
|
1847
1301
|
_loop_1(item);
|
|
1848
1302
|
}
|
|
1849
1303
|
} catch (e_5_1) {
|
|
@@ -1857,46 +1311,34 @@ function () {
|
|
|
1857
1311
|
if (e_5) throw e_5.error;
|
|
1858
1312
|
}
|
|
1859
1313
|
}
|
|
1860
|
-
|
|
1861
|
-
return [4
|
|
1862
|
-
/*yield*/
|
|
1863
|
-
, this.db.batchQuery(queryStatements)];
|
|
1864
|
-
|
|
1314
|
+
return [4 /*yield*/, this.db.batchQuery(queryStatements)];
|
|
1865
1315
|
case 1:
|
|
1866
1316
|
queryResponses = _b.sent();
|
|
1867
1317
|
queryResponses.forEach(function (response, idx) {
|
|
1868
1318
|
if (response === undefined) {
|
|
1869
|
-
var insertStatement = Object(
|
|
1319
|
+
var insertStatement = Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["modelInsertStatement"])(itemsToSave[idx], tableName);
|
|
1870
1320
|
saveStatements.add(insertStatement);
|
|
1871
|
-
result.push([itemsToSave[idx],
|
|
1321
|
+
result.push([itemsToSave[idx], _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["OpType"].INSERT]);
|
|
1872
1322
|
} else {
|
|
1873
|
-
var updateStatement = Object(
|
|
1323
|
+
var updateStatement = Object(_common_SQLiteUtils__WEBPACK_IMPORTED_MODULE_2__["modelUpdateStatement"])(itemsToSave[idx], tableName);
|
|
1874
1324
|
saveStatements.add(updateStatement);
|
|
1875
|
-
result.push([itemsToSave[idx],
|
|
1325
|
+
result.push([itemsToSave[idx], _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_3__["OpType"].UPDATE]);
|
|
1876
1326
|
}
|
|
1877
|
-
});
|
|
1878
|
-
|
|
1879
|
-
return [4
|
|
1880
|
-
/*yield*/
|
|
1881
|
-
, this.db.batchSave(saveStatements, deleteStatements)];
|
|
1882
|
-
|
|
1327
|
+
});
|
|
1328
|
+
// perform all of the insert/update/delete operations in a single transaction
|
|
1329
|
+
return [4 /*yield*/, this.db.batchSave(saveStatements, deleteStatements)];
|
|
1883
1330
|
case 2:
|
|
1884
1331
|
// perform all of the insert/update/delete operations in a single transaction
|
|
1885
1332
|
_b.sent();
|
|
1886
|
-
|
|
1887
|
-
return [2
|
|
1888
|
-
/*return*/
|
|
1889
|
-
, result];
|
|
1333
|
+
return [2 /*return*/, result];
|
|
1890
1334
|
}
|
|
1891
1335
|
});
|
|
1892
1336
|
});
|
|
1893
1337
|
};
|
|
1894
|
-
|
|
1895
1338
|
return CommonSQLiteAdapter;
|
|
1896
1339
|
}();
|
|
1897
1340
|
|
|
1898
1341
|
|
|
1899
|
-
|
|
1900
1342
|
/***/ }),
|
|
1901
1343
|
|
|
1902
1344
|
/***/ "./lib-esm/common/SQLiteUtils.js":
|
|
@@ -1922,8 +1364,9 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
1922
1364
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "queryOneStatement", function() { return queryOneStatement; });
|
|
1923
1365
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "deleteByIdStatement", function() { return deleteByIdStatement; });
|
|
1924
1366
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "deleteByPredicateStatement", function() { return deleteByPredicateStatement; });
|
|
1925
|
-
/* harmony import */ var
|
|
1926
|
-
/* harmony import */ var
|
|
1367
|
+
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "../../node_modules/tslib/tslib.es6.js");
|
|
1368
|
+
/* harmony import */ var _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @aws-amplify/datastore */ "@aws-amplify/datastore");
|
|
1369
|
+
/* harmony import */ var _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__);
|
|
1927
1370
|
function _typeof(obj) {
|
|
1928
1371
|
"@babel/helpers - typeof";
|
|
1929
1372
|
|
|
@@ -1934,69 +1377,15 @@ function _typeof(obj) {
|
|
|
1934
1377
|
}, _typeof(obj);
|
|
1935
1378
|
}
|
|
1936
1379
|
|
|
1937
|
-
var __read = undefined && undefined.__read || function (o, n) {
|
|
1938
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
1939
|
-
if (!m) return o;
|
|
1940
|
-
var i = m.call(o),
|
|
1941
|
-
r,
|
|
1942
|
-
ar = [],
|
|
1943
|
-
e;
|
|
1944
|
-
|
|
1945
|
-
try {
|
|
1946
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
|
|
1947
|
-
ar.push(r.value);
|
|
1948
|
-
}
|
|
1949
|
-
} catch (error) {
|
|
1950
|
-
e = {
|
|
1951
|
-
error: error
|
|
1952
|
-
};
|
|
1953
|
-
} finally {
|
|
1954
|
-
try {
|
|
1955
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
1956
|
-
} finally {
|
|
1957
|
-
if (e) throw e.error;
|
|
1958
|
-
}
|
|
1959
|
-
}
|
|
1960
|
-
|
|
1961
|
-
return ar;
|
|
1962
|
-
};
|
|
1963
|
-
|
|
1964
|
-
var __spread = undefined && undefined.__spread || function () {
|
|
1965
|
-
for (var ar = [], i = 0; i < arguments.length; i++) {
|
|
1966
|
-
ar = ar.concat(__read(arguments[i]));
|
|
1967
|
-
}
|
|
1968
|
-
|
|
1969
|
-
return ar;
|
|
1970
|
-
};
|
|
1971
|
-
|
|
1972
|
-
var __values = undefined && undefined.__values || function (o) {
|
|
1973
|
-
var s = typeof Symbol === "function" && Symbol.iterator,
|
|
1974
|
-
m = s && o[s],
|
|
1975
|
-
i = 0;
|
|
1976
|
-
if (m) return m.call(o);
|
|
1977
|
-
if (o && typeof o.length === "number") return {
|
|
1978
|
-
next: function next() {
|
|
1979
|
-
if (o && i >= o.length) o = void 0;
|
|
1980
|
-
return {
|
|
1981
|
-
value: o && o[i++],
|
|
1982
|
-
done: !o
|
|
1983
|
-
};
|
|
1984
|
-
}
|
|
1985
|
-
};
|
|
1986
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
1987
|
-
};
|
|
1988
|
-
|
|
1989
|
-
|
|
1990
|
-
var USER = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_0__["utils"].USER,
|
|
1991
|
-
isNonModelConstructor = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_0__["utils"].isNonModelConstructor,
|
|
1992
|
-
isModelConstructor = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_0__["utils"].isModelConstructor;
|
|
1993
1380
|
|
|
1381
|
+
var USER = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__["utils"].USER,
|
|
1382
|
+
isNonModelConstructor = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__["utils"].isNonModelConstructor,
|
|
1383
|
+
isModelConstructor = _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__["utils"].isModelConstructor;
|
|
1994
1384
|
var keysFromModel = function keysFromModel(model) {
|
|
1995
1385
|
return Object.keys(model).map(function (k) {
|
|
1996
1386
|
return "\"" + k + "\"";
|
|
1997
1387
|
}).join(', ');
|
|
1998
1388
|
};
|
|
1999
|
-
|
|
2000
1389
|
var valuesFromModel = function valuesFromModel(model) {
|
|
2001
1390
|
var values = Object.values(model).map(prepareValueForDML);
|
|
2002
1391
|
var paramaterized = values.map(function () {
|
|
@@ -2004,49 +1393,39 @@ var valuesFromModel = function valuesFromModel(model) {
|
|
|
2004
1393
|
}).join(', ');
|
|
2005
1394
|
return [paramaterized, values];
|
|
2006
1395
|
};
|
|
2007
|
-
|
|
2008
1396
|
var updateSet = function updateSet(model) {
|
|
2009
1397
|
var values = [];
|
|
2010
1398
|
var paramaterized = Object.entries(model).filter(function (_a) {
|
|
2011
|
-
var _b = __read(_a, 1),
|
|
2012
|
-
|
|
2013
|
-
|
|
1399
|
+
var _b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(_a, 1),
|
|
1400
|
+
k = _b[0];
|
|
2014
1401
|
return k !== 'id';
|
|
2015
1402
|
}).map(function (_a) {
|
|
2016
|
-
var _b = __read(_a, 2),
|
|
2017
|
-
|
|
2018
|
-
|
|
2019
|
-
|
|
1403
|
+
var _b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(_a, 2),
|
|
1404
|
+
k = _b[0],
|
|
1405
|
+
v = _b[1];
|
|
2020
1406
|
values.push(prepareValueForDML(v));
|
|
2021
1407
|
return "\"" + k + "\"=?";
|
|
2022
1408
|
}).join(', ');
|
|
2023
1409
|
return [paramaterized, values];
|
|
2024
1410
|
};
|
|
2025
|
-
|
|
2026
1411
|
function prepareValueForDML(value) {
|
|
2027
1412
|
var scalarTypes = ['string', 'number', 'boolean'];
|
|
2028
1413
|
var isScalarType = value === null || value === undefined || scalarTypes.includes(_typeof(value));
|
|
2029
|
-
|
|
2030
1414
|
if (isScalarType) {
|
|
2031
1415
|
return value;
|
|
2032
1416
|
}
|
|
2033
|
-
|
|
2034
1417
|
var isObjectType = _typeof(value) === 'object' && (Object.getPrototypeOf(value).constructor === Object || isNonModelConstructor(Object.getPrototypeOf(value).constructor) || isModelConstructor(Object.getPrototypeOf(value).constructor));
|
|
2035
|
-
|
|
2036
1418
|
if (Array.isArray(value) || isObjectType) {
|
|
2037
1419
|
return JSON.stringify(value);
|
|
2038
1420
|
}
|
|
2039
|
-
|
|
2040
1421
|
return "" + value;
|
|
2041
1422
|
}
|
|
2042
|
-
|
|
2043
1423
|
function getSQLiteType(scalar) {
|
|
2044
1424
|
switch (scalar) {
|
|
2045
1425
|
case 'Boolean':
|
|
2046
1426
|
case 'Int':
|
|
2047
1427
|
case 'AWSTimestamp':
|
|
2048
1428
|
return 'INTEGER';
|
|
2049
|
-
|
|
2050
1429
|
case 'ID':
|
|
2051
1430
|
case 'String':
|
|
2052
1431
|
case 'AWSDate':
|
|
@@ -2058,10 +1437,8 @@ function getSQLiteType(scalar) {
|
|
|
2058
1437
|
case 'AWSPhone':
|
|
2059
1438
|
case 'AWSIPAddress':
|
|
2060
1439
|
return 'TEXT';
|
|
2061
|
-
|
|
2062
1440
|
case 'Float':
|
|
2063
1441
|
return 'REAL';
|
|
2064
|
-
|
|
2065
1442
|
default:
|
|
2066
1443
|
var _ = scalar;
|
|
2067
1444
|
throw new Error("unknown type " + scalar);
|
|
@@ -2080,13 +1457,10 @@ var implicitAuthFieldsForModel = function implicitAuthFieldsForModel(model) {
|
|
|
2080
1457
|
if (!model.attributes || !model.attributes.length) {
|
|
2081
1458
|
return [];
|
|
2082
1459
|
}
|
|
2083
|
-
|
|
2084
|
-
var authRules = model.attributes.find(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_0__["isModelAttributeAuth"]);
|
|
2085
|
-
|
|
1460
|
+
var authRules = model.attributes.find(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__["isModelAttributeAuth"]);
|
|
2086
1461
|
if (!authRules) {
|
|
2087
1462
|
return [];
|
|
2088
1463
|
}
|
|
2089
|
-
|
|
2090
1464
|
var authFieldsForModel = authRules.properties.rules.filter(function (rule) {
|
|
2091
1465
|
return rule.ownerField || rule.groupsField;
|
|
2092
1466
|
}).map(function (rule) {
|
|
@@ -2102,82 +1476,68 @@ var implicitAuthFieldsForModel = function implicitAuthFieldsForModel(model) {
|
|
|
2102
1476
|
function modelCreateTableStatement(model, userModel) {
|
|
2103
1477
|
if (userModel === void 0) {
|
|
2104
1478
|
userModel = false;
|
|
2105
|
-
}
|
|
2106
|
-
|
|
2107
|
-
|
|
1479
|
+
}
|
|
1480
|
+
// implicitly defined auth fields, e.g., `owner`, `groupsField`, etc.
|
|
2108
1481
|
var implicitAuthFields = implicitAuthFieldsForModel(model);
|
|
2109
1482
|
var fields = Object.values(model.fields).reduce(function (acc, field) {
|
|
2110
|
-
if (Object(
|
|
1483
|
+
if (Object(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__["isGraphQLScalarType"])(field.type)) {
|
|
2111
1484
|
if (field.name === 'id') {
|
|
2112
1485
|
return acc + '"id" PRIMARY KEY NOT NULL';
|
|
2113
1486
|
}
|
|
2114
|
-
|
|
2115
1487
|
var columnParam_1 = "\"" + field.name + "\" " + getSQLiteType(field.type);
|
|
2116
|
-
|
|
2117
1488
|
if (field.isRequired) {
|
|
2118
1489
|
columnParam_1 += ' NOT NULL';
|
|
2119
1490
|
}
|
|
2120
|
-
|
|
2121
1491
|
return acc + (", " + columnParam_1);
|
|
2122
1492
|
}
|
|
2123
|
-
|
|
2124
|
-
|
|
2125
|
-
|
|
2126
|
-
|
|
2127
|
-
if (Object(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_0__["isTargetNameAssociation"])(field.association)) {
|
|
1493
|
+
if (Object(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__["isModelFieldType"])(field.type)) {
|
|
1494
|
+
var columnParam_2 = "\"" + field.name + "\" TEXT";
|
|
1495
|
+
// add targetName as well as field name for BELONGS_TO relations
|
|
1496
|
+
if (Object(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__["isTargetNameAssociation"])(field.association)) {
|
|
2128
1497
|
// check if this field has been explicitly defined in the model
|
|
2129
1498
|
var fkDefinedInModel = Object.values(model.fields).find(function (f) {
|
|
2130
1499
|
return f.name === field.association.targetName;
|
|
2131
|
-
});
|
|
2132
|
-
|
|
1500
|
+
});
|
|
1501
|
+
// if the FK is not explicitly defined in the model, we have to add it here
|
|
2133
1502
|
if (!fkDefinedInModel) {
|
|
2134
1503
|
var required = field.isRequired ? ' NOT NULL' : '';
|
|
2135
1504
|
columnParam_2 += ", \"" + field.association.targetName + "\" TEXT" + required;
|
|
2136
1505
|
}
|
|
2137
|
-
}
|
|
1506
|
+
}
|
|
1507
|
+
// ignore isRequired param for model fields, since they will not contain
|
|
2138
1508
|
// the related data locally
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
1509
|
return acc + (", " + columnParam_2);
|
|
2142
|
-
}
|
|
2143
|
-
|
|
2144
|
-
|
|
1510
|
+
}
|
|
1511
|
+
// default to TEXT
|
|
2145
1512
|
var columnParam = "\"" + field.name + "\" TEXT";
|
|
2146
|
-
|
|
2147
1513
|
if (field.isRequired) {
|
|
2148
1514
|
columnParam += ' NOT NULL';
|
|
2149
1515
|
}
|
|
2150
|
-
|
|
2151
1516
|
return acc + (", " + columnParam);
|
|
2152
1517
|
}, '');
|
|
2153
1518
|
implicitAuthFields.forEach(function (authField) {
|
|
2154
1519
|
fields += ", " + authField + " TEXT";
|
|
2155
1520
|
});
|
|
2156
|
-
|
|
2157
1521
|
if (userModel) {
|
|
2158
1522
|
fields += ', "_version" INTEGER, "_lastChangedAt" INTEGER, "_deleted" INTEGER';
|
|
2159
1523
|
}
|
|
2160
|
-
|
|
2161
1524
|
var createTableStatement = "CREATE TABLE IF NOT EXISTS \"" + model.name + "\" (" + fields + ");";
|
|
2162
1525
|
return createTableStatement;
|
|
2163
1526
|
}
|
|
2164
1527
|
function modelInsertStatement(model, tableName) {
|
|
2165
1528
|
var keys = keysFromModel(model);
|
|
2166
|
-
|
|
2167
|
-
|
|
2168
|
-
|
|
2169
|
-
values = _a[1];
|
|
2170
|
-
|
|
1529
|
+
var _a = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(valuesFromModel(model), 2),
|
|
1530
|
+
paramaterized = _a[0],
|
|
1531
|
+
values = _a[1];
|
|
2171
1532
|
var insertStatement = "INSERT INTO \"" + tableName + "\" (" + keys + ") VALUES (" + paramaterized + ")";
|
|
2172
1533
|
return [insertStatement, values];
|
|
2173
1534
|
}
|
|
2174
1535
|
function modelUpdateStatement(model, tableName) {
|
|
2175
|
-
var _a = __read(updateSet(model), 2),
|
|
2176
|
-
|
|
2177
|
-
|
|
2178
|
-
|
|
1536
|
+
var _a = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(updateSet(model), 2),
|
|
1537
|
+
paramaterized = _a[0],
|
|
1538
|
+
values = _a[1];
|
|
2179
1539
|
var updateStatement = "UPDATE \"" + tableName + "\" SET " + paramaterized + " WHERE id=?";
|
|
2180
|
-
return [updateStatement, __spread(values, [model.id])];
|
|
1540
|
+
return [updateStatement, Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__spread"])(values, [model.id])];
|
|
2181
1541
|
}
|
|
2182
1542
|
function queryByIdStatement(id, tableName) {
|
|
2183
1543
|
return ["SELECT * FROM \"" + tableName + "\" WHERE \"id\" = ?", [id]];
|
|
@@ -2189,7 +1549,6 @@ function queryByIdStatement(id, tableName) {
|
|
|
2189
1549
|
Numbers: eq | ne | le | lt | ge | gt | between
|
|
2190
1550
|
Lists: contains | notContains
|
|
2191
1551
|
*/
|
|
2192
|
-
|
|
2193
1552
|
var comparisonOperatorMap = {
|
|
2194
1553
|
eq: '=',
|
|
2195
1554
|
ne: '!=',
|
|
@@ -2215,7 +1574,6 @@ var logicalOperatorMap = {
|
|
|
2215
1574
|
* @param operand any
|
|
2216
1575
|
* @returns (string | null) The `WHERE` clause component or `null` if N/A.
|
|
2217
1576
|
*/
|
|
2218
|
-
|
|
2219
1577
|
function buildSpecialNullComparison(field, operator, operand) {
|
|
2220
1578
|
if (operand === null || operand === undefined) {
|
|
2221
1579
|
if (operator === 'eq') {
|
|
@@ -2223,107 +1581,83 @@ function buildSpecialNullComparison(field, operator, operand) {
|
|
|
2223
1581
|
} else if (operator === 'ne') {
|
|
2224
1582
|
return "\"" + field + "\" IS NOT NULL";
|
|
2225
1583
|
}
|
|
2226
|
-
}
|
|
2227
|
-
|
|
2228
|
-
|
|
1584
|
+
}
|
|
1585
|
+
// no special null handling required
|
|
2229
1586
|
return null;
|
|
2230
1587
|
}
|
|
2231
|
-
|
|
2232
1588
|
var whereConditionFromPredicateObject = function whereConditionFromPredicateObject(_a) {
|
|
2233
1589
|
var field = _a.field,
|
|
2234
|
-
|
|
2235
|
-
|
|
1590
|
+
operator = _a.operator,
|
|
1591
|
+
operand = _a.operand;
|
|
2236
1592
|
var specialNullClause = buildSpecialNullComparison(field, operator, operand);
|
|
2237
|
-
|
|
2238
1593
|
if (specialNullClause) {
|
|
2239
1594
|
return [specialNullClause, []];
|
|
2240
1595
|
}
|
|
2241
|
-
|
|
2242
1596
|
var comparisonOperator = comparisonOperatorMap[operator];
|
|
2243
|
-
|
|
2244
1597
|
if (comparisonOperator) {
|
|
2245
1598
|
return ["\"" + field + "\" " + comparisonOperator + " ?", [operand]];
|
|
2246
1599
|
}
|
|
2247
|
-
|
|
2248
1600
|
var logicalOperatorKey = operator;
|
|
2249
1601
|
var logicalOperator = logicalOperatorMap[logicalOperatorKey];
|
|
2250
|
-
|
|
2251
1602
|
if (logicalOperator) {
|
|
2252
1603
|
var rightExp = [];
|
|
2253
|
-
|
|
2254
1604
|
switch (logicalOperatorKey) {
|
|
2255
1605
|
case 'between':
|
|
2256
1606
|
rightExp = operand; // operand is a 2-tuple
|
|
2257
|
-
|
|
2258
1607
|
break;
|
|
2259
|
-
|
|
2260
1608
|
case 'beginsWith':
|
|
2261
1609
|
rightExp = [operand + "%"];
|
|
2262
1610
|
break;
|
|
2263
|
-
|
|
2264
1611
|
case 'contains':
|
|
2265
1612
|
case 'notContains':
|
|
2266
1613
|
rightExp = ["%" + operand + "%"];
|
|
2267
1614
|
break;
|
|
2268
|
-
|
|
2269
1615
|
default:
|
|
2270
|
-
var _ = logicalOperatorKey;
|
|
2271
|
-
|
|
1616
|
+
var _ = logicalOperatorKey;
|
|
1617
|
+
// Incorrect WHERE clause can result in data loss
|
|
2272
1618
|
throw new Error('Cannot map predicate to a valid WHERE clause');
|
|
2273
1619
|
}
|
|
2274
|
-
|
|
2275
1620
|
return ["\"" + field + "\" " + logicalOperator + " " + rightExp.map(function (_) {
|
|
2276
1621
|
return '?';
|
|
2277
1622
|
}).join(' AND '), rightExp];
|
|
2278
1623
|
}
|
|
2279
1624
|
};
|
|
2280
|
-
|
|
2281
1625
|
function whereClauseFromPredicate(predicate) {
|
|
2282
1626
|
var result = [];
|
|
2283
1627
|
var params = [];
|
|
2284
1628
|
recurse(predicate, result, params);
|
|
2285
1629
|
var whereClause = "WHERE " + result.join(' ');
|
|
2286
1630
|
return [whereClause, params];
|
|
2287
|
-
|
|
2288
1631
|
function recurse(predicate, result, params) {
|
|
2289
1632
|
var e_1, _a;
|
|
2290
|
-
|
|
2291
1633
|
if (result === void 0) {
|
|
2292
1634
|
result = [];
|
|
2293
1635
|
}
|
|
2294
|
-
|
|
2295
1636
|
if (params === void 0) {
|
|
2296
1637
|
params = [];
|
|
2297
1638
|
}
|
|
2298
|
-
|
|
2299
|
-
if (Object(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_0__["isPredicateGroup"])(predicate)) {
|
|
1639
|
+
if (Object(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__["isPredicateGroup"])(predicate)) {
|
|
2300
1640
|
var groupType = predicate.type,
|
|
2301
|
-
|
|
1641
|
+
groupPredicates = predicate.predicates;
|
|
2302
1642
|
var filterType = '';
|
|
2303
1643
|
var isNegation = false;
|
|
2304
|
-
|
|
2305
1644
|
switch (groupType) {
|
|
2306
1645
|
case 'not':
|
|
2307
1646
|
isNegation = true;
|
|
2308
1647
|
break;
|
|
2309
|
-
|
|
2310
1648
|
case 'and':
|
|
2311
1649
|
filterType = 'AND';
|
|
2312
1650
|
break;
|
|
2313
|
-
|
|
2314
1651
|
case 'or':
|
|
2315
1652
|
filterType = 'OR';
|
|
2316
1653
|
break;
|
|
2317
|
-
|
|
2318
1654
|
default:
|
|
2319
1655
|
var _ = groupType;
|
|
2320
1656
|
throw new Error("Invalid " + groupType);
|
|
2321
1657
|
}
|
|
2322
|
-
|
|
2323
1658
|
var groupResult = [];
|
|
2324
|
-
|
|
2325
1659
|
try {
|
|
2326
|
-
for (var groupPredicates_1 = __values(groupPredicates), groupPredicates_1_1 = groupPredicates_1.next(); !groupPredicates_1_1.done; groupPredicates_1_1 = groupPredicates_1.next()) {
|
|
1660
|
+
for (var groupPredicates_1 = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__values"])(groupPredicates), groupPredicates_1_1 = groupPredicates_1.next(); !groupPredicates_1_1.done; groupPredicates_1_1 = groupPredicates_1.next()) {
|
|
2327
1661
|
var p = groupPredicates_1_1.value;
|
|
2328
1662
|
recurse(p, groupResult, params);
|
|
2329
1663
|
}
|
|
@@ -2338,15 +1672,13 @@ function whereClauseFromPredicate(predicate) {
|
|
|
2338
1672
|
if (e_1) throw e_1.error;
|
|
2339
1673
|
}
|
|
2340
1674
|
}
|
|
2341
|
-
|
|
2342
1675
|
result.push((isNegation ? 'NOT' : '') + "(" + groupResult.join(" " + filterType + " ") + ")");
|
|
2343
|
-
} else if (Object(
|
|
2344
|
-
var _b = __read(whereConditionFromPredicateObject(predicate), 2),
|
|
2345
|
-
|
|
2346
|
-
|
|
2347
|
-
|
|
1676
|
+
} else if (Object(_aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__["isPredicateObj"])(predicate)) {
|
|
1677
|
+
var _b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(whereConditionFromPredicateObject(predicate), 2),
|
|
1678
|
+
condition = _b[0],
|
|
1679
|
+
conditionParams = _b[1];
|
|
2348
1680
|
result.push(condition);
|
|
2349
|
-
params.push.apply(params, __spread(conditionParams));
|
|
1681
|
+
params.push.apply(params, Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__spread"])(conditionParams));
|
|
2350
1682
|
}
|
|
2351
1683
|
}
|
|
2352
1684
|
}
|
|
@@ -2358,13 +1690,12 @@ function orderByClauseFromSort(sortPredicate) {
|
|
|
2358
1690
|
if (sortPredicate === void 0) {
|
|
2359
1691
|
sortPredicate = [];
|
|
2360
1692
|
}
|
|
2361
|
-
|
|
2362
1693
|
var orderByParts = sortPredicate.map(function (_a) {
|
|
2363
1694
|
var field = _a.field,
|
|
2364
|
-
|
|
1695
|
+
sortDirection = _a.sortDirection;
|
|
2365
1696
|
return "\"" + field + "\" " + sortDirectionMap[sortDirection];
|
|
2366
|
-
});
|
|
2367
|
-
|
|
1697
|
+
});
|
|
1698
|
+
// We always sort by _rowid_ last
|
|
2368
1699
|
orderByParts.push("_rowid_ " + sortDirectionMap.ASCENDING);
|
|
2369
1700
|
return "ORDER BY " + orderByParts.join(', ');
|
|
2370
1701
|
}
|
|
@@ -2372,47 +1703,38 @@ function limitClauseFromPagination(limit, page) {
|
|
|
2372
1703
|
if (page === void 0) {
|
|
2373
1704
|
page = 0;
|
|
2374
1705
|
}
|
|
2375
|
-
|
|
2376
1706
|
var params = [limit];
|
|
2377
1707
|
var clause = 'LIMIT ?';
|
|
2378
|
-
|
|
2379
1708
|
if (page) {
|
|
2380
1709
|
var offset = limit * page;
|
|
2381
1710
|
params.push(offset);
|
|
2382
1711
|
clause += ' OFFSET ?';
|
|
2383
1712
|
}
|
|
2384
|
-
|
|
2385
1713
|
return [clause, params];
|
|
2386
1714
|
}
|
|
2387
1715
|
function queryAllStatement(tableName, predicate, sort, limit, page) {
|
|
2388
1716
|
var statement = "SELECT * FROM \"" + tableName + "\"";
|
|
2389
1717
|
var params = [];
|
|
2390
|
-
|
|
2391
1718
|
if (predicate && predicate.predicates.length) {
|
|
2392
|
-
var _a = __read(whereClauseFromPredicate(predicate), 2),
|
|
2393
|
-
|
|
2394
|
-
|
|
2395
|
-
|
|
1719
|
+
var _a = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(whereClauseFromPredicate(predicate), 2),
|
|
1720
|
+
whereClause = _a[0],
|
|
1721
|
+
whereParams = _a[1];
|
|
2396
1722
|
statement += " " + whereClause;
|
|
2397
|
-
params.push.apply(params, __spread(whereParams));
|
|
1723
|
+
params.push.apply(params, Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__spread"])(whereParams));
|
|
2398
1724
|
}
|
|
2399
|
-
|
|
2400
1725
|
var orderByClause = orderByClauseFromSort(sort);
|
|
2401
1726
|
statement += " " + orderByClause;
|
|
2402
|
-
|
|
2403
1727
|
if (limit) {
|
|
2404
|
-
var _b = __read(limitClauseFromPagination(limit, page), 2),
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
|
|
1728
|
+
var _b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(limitClauseFromPagination(limit, page), 2),
|
|
1729
|
+
limitClause = _b[0],
|
|
1730
|
+
limitParams = _b[1];
|
|
2408
1731
|
statement += " " + limitClause;
|
|
2409
|
-
params.push.apply(params, __spread(limitParams));
|
|
1732
|
+
params.push.apply(params, Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__spread"])(limitParams));
|
|
2410
1733
|
}
|
|
2411
|
-
|
|
2412
1734
|
return [statement, params];
|
|
2413
1735
|
}
|
|
2414
1736
|
function queryOneStatement(firstOrLast, tableName) {
|
|
2415
|
-
if (firstOrLast ===
|
|
1737
|
+
if (firstOrLast === _aws_amplify_datastore__WEBPACK_IMPORTED_MODULE_1__["QueryOne"].FIRST) {
|
|
2416
1738
|
// ORDER BY rowid will no longer work as expected if a customer has
|
|
2417
1739
|
// a field by that name in their schema. We may want to enforce it
|
|
2418
1740
|
// as a reserved keyword in Codegen
|
|
@@ -2428,16 +1750,13 @@ function deleteByIdStatement(id, tableName) {
|
|
|
2428
1750
|
function deleteByPredicateStatement(tableName, predicate) {
|
|
2429
1751
|
var statement = "DELETE FROM \"" + tableName + "\"";
|
|
2430
1752
|
var params = [];
|
|
2431
|
-
|
|
2432
1753
|
if (predicate && predicate.predicates.length) {
|
|
2433
|
-
var _a = __read(whereClauseFromPredicate(predicate), 2),
|
|
2434
|
-
|
|
2435
|
-
|
|
2436
|
-
|
|
1754
|
+
var _a = Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__read"])(whereClauseFromPredicate(predicate), 2),
|
|
1755
|
+
whereClause = _a[0],
|
|
1756
|
+
whereParams = _a[1];
|
|
2437
1757
|
statement += " " + whereClause;
|
|
2438
|
-
params.push.apply(params, __spread(whereParams));
|
|
1758
|
+
params.push.apply(params, Object(tslib__WEBPACK_IMPORTED_MODULE_0__["__spread"])(whereParams));
|
|
2439
1759
|
}
|
|
2440
|
-
|
|
2441
1760
|
return [statement, params];
|
|
2442
1761
|
}
|
|
2443
1762
|
|