@aws-amplify/datastore 3.11.4-unstable.11 → 3.11.4-unstable.12
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/dist/aws-amplify-datastore.js +57 -15
- package/dist/aws-amplify-datastore.js.map +1 -1
- package/dist/aws-amplify-datastore.min.js +8 -8
- package/dist/aws-amplify-datastore.min.js.map +1 -1
- package/lib/datastore/datastore.js +12 -3
- package/lib/datastore/datastore.js.map +1 -1
- package/lib/util.d.ts +19 -0
- package/lib/util.js +29 -0
- package/lib/util.js.map +1 -1
- package/lib-esm/datastore/datastore.js +13 -4
- package/lib-esm/datastore/datastore.js.map +1 -1
- package/lib-esm/util.d.ts +19 -0
- package/lib-esm/util.js +28 -0
- package/lib-esm/util.js.map +1 -1
- package/package.json +7 -7
- package/src/datastore/datastore.ts +16 -3
- package/src/util.ts +40 -3
|
@@ -82313,10 +82313,21 @@ var createModelClass = function createModelClass(modelDefinition) {
|
|
|
82313
82313
|
}, function (p) {
|
|
82314
82314
|
return patches = p;
|
|
82315
82315
|
});
|
|
82316
|
+
var hasExistingPatches = modelPatchesMap.has(source);
|
|
82316
82317
|
|
|
82317
|
-
if (patches.length) {
|
|
82318
|
-
|
|
82319
|
-
|
|
82318
|
+
if (patches.length || hasExistingPatches) {
|
|
82319
|
+
if (hasExistingPatches) {
|
|
82320
|
+
var _a = __read(modelPatchesMap.get(source), 2),
|
|
82321
|
+
existingPatches = _a[0],
|
|
82322
|
+
existingSource = _a[1];
|
|
82323
|
+
|
|
82324
|
+
var mergedPatches = Object(_util__WEBPACK_IMPORTED_MODULE_9__["mergePatches"])(existingSource, existingPatches, patches);
|
|
82325
|
+
modelPatchesMap.set(model, [mergedPatches, existingSource]);
|
|
82326
|
+
checkReadOnlyPropertyOnUpdate(mergedPatches, modelDefinition);
|
|
82327
|
+
} else {
|
|
82328
|
+
modelPatchesMap.set(model, [patches, source]);
|
|
82329
|
+
checkReadOnlyPropertyOnUpdate(patches, modelDefinition);
|
|
82330
|
+
}
|
|
82320
82331
|
}
|
|
82321
82332
|
|
|
82322
82333
|
return model;
|
|
@@ -96271,7 +96282,7 @@ var LimitTimerRaceResolvedValues;
|
|
|
96271
96282
|
/*!*************************!*\
|
|
96272
96283
|
!*** ./lib-esm/util.js ***!
|
|
96273
96284
|
\*************************/
|
|
96274
|
-
/*! exports provided: exhaustiveCheck, isNullOrUndefined, validatePredicate, validatePredicateField, isModelConstructor, registerNonModelClass, isNonModelConstructor, processCompositeKeys, establishRelationAndKeys, traverseModel, getIndex, getIndexFromAssociation, NAMESPACES, USER, SYNC, STORAGE, DATASTORE, isPrivateMode, monotonicUlidFactory, getNow, sortCompareFunction, valuesEqual, isAWSDate, isAWSTime, isAWSDateTime, isAWSTimestamp, isAWSEmail, isAWSJSON, isAWSURL, isAWSPhone, isAWSIPAddress, DeferredPromise, DeferredCallbackResolver */
|
|
96285
|
+
/*! exports provided: exhaustiveCheck, isNullOrUndefined, validatePredicate, validatePredicateField, isModelConstructor, registerNonModelClass, isNonModelConstructor, processCompositeKeys, establishRelationAndKeys, traverseModel, getIndex, getIndexFromAssociation, NAMESPACES, USER, SYNC, STORAGE, DATASTORE, isPrivateMode, monotonicUlidFactory, getNow, sortCompareFunction, valuesEqual, isAWSDate, isAWSTime, isAWSDateTime, isAWSTimestamp, isAWSEmail, isAWSJSON, isAWSURL, isAWSPhone, isAWSIPAddress, DeferredPromise, DeferredCallbackResolver, mergePatches */
|
|
96275
96286
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
96276
96287
|
|
|
96277
96288
|
"use strict";
|
|
@@ -96309,13 +96320,15 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
96309
96320
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isAWSIPAddress", function() { return isAWSIPAddress; });
|
|
96310
96321
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DeferredPromise", function() { return DeferredPromise; });
|
|
96311
96322
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DeferredCallbackResolver", function() { return DeferredCallbackResolver; });
|
|
96323
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mergePatches", function() { return mergePatches; });
|
|
96312
96324
|
/* harmony import */ var buffer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! buffer */ "../../node_modules/buffer/index.js");
|
|
96313
96325
|
/* harmony import */ var buffer__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(buffer__WEBPACK_IMPORTED_MODULE_0__);
|
|
96314
96326
|
/* harmony import */ var ulid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ulid */ "../../node_modules/ulid/dist/index.esm.js");
|
|
96315
96327
|
/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! uuid */ "./node_modules/uuid/index.js");
|
|
96316
96328
|
/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(uuid__WEBPACK_IMPORTED_MODULE_2__);
|
|
96317
|
-
/* harmony import */ var
|
|
96318
|
-
/* harmony import */ var
|
|
96329
|
+
/* harmony import */ var immer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! immer */ "./node_modules/immer/dist/immer.esm.js");
|
|
96330
|
+
/* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./types */ "./lib-esm/types.js");
|
|
96331
|
+
/* harmony import */ var amazon_cognito_identity_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! amazon-cognito-identity-js */ "../amazon-cognito-identity-js/es/index.js");
|
|
96319
96332
|
function _typeof(obj) {
|
|
96320
96333
|
"@babel/helpers - typeof";
|
|
96321
96334
|
|
|
@@ -96526,6 +96539,7 @@ var __values = undefined && undefined.__values || function (o) {
|
|
|
96526
96539
|
|
|
96527
96540
|
|
|
96528
96541
|
|
|
96542
|
+
|
|
96529
96543
|
var exhaustiveCheck = function exhaustiveCheck(obj, throwOnError) {
|
|
96530
96544
|
if (throwOnError === void 0) {
|
|
96531
96545
|
throwOnError = true;
|
|
@@ -96565,7 +96579,7 @@ var validatePredicate = function validatePredicate(model, groupType, predicatesO
|
|
|
96565
96579
|
}
|
|
96566
96580
|
|
|
96567
96581
|
var result = predicatesOrGroups[filterType](function (predicateOrGroup) {
|
|
96568
|
-
if (Object(
|
|
96582
|
+
if (Object(_types__WEBPACK_IMPORTED_MODULE_4__["isPredicateObj"])(predicateOrGroup)) {
|
|
96569
96583
|
var field = predicateOrGroup.field,
|
|
96570
96584
|
operator = predicateOrGroup.operator,
|
|
96571
96585
|
operand = predicateOrGroup.operand;
|
|
@@ -96573,7 +96587,7 @@ var validatePredicate = function validatePredicate(model, groupType, predicatesO
|
|
|
96573
96587
|
return validatePredicateField(value, operator, operand);
|
|
96574
96588
|
}
|
|
96575
96589
|
|
|
96576
|
-
if (Object(
|
|
96590
|
+
if (Object(_types__WEBPACK_IMPORTED_MODULE_4__["isPredicateGroup"])(predicateOrGroup)) {
|
|
96577
96591
|
var type = predicateOrGroup.type,
|
|
96578
96592
|
predicates = predicateOrGroup.predicates;
|
|
96579
96593
|
return validatePredicate(model, type, predicates);
|
|
@@ -96676,7 +96690,7 @@ var processCompositeKeys = function processCompositeKeys(attributes) {
|
|
|
96676
96690
|
return sortKeyFields;
|
|
96677
96691
|
};
|
|
96678
96692
|
|
|
96679
|
-
var compositeKeyFields = attributes.filter(
|
|
96693
|
+
var compositeKeyFields = attributes.filter(_types__WEBPACK_IMPORTED_MODULE_4__["isModelAttributeCompositeKey"]).map(extractCompositeSortKey);
|
|
96680
96694
|
/*
|
|
96681
96695
|
if 2 sets of fields have any intersecting fields => combine them into 1 union set
|
|
96682
96696
|
e.g., ['a', 'b', 'c'] and ['a', 'b', 'd'] => ['a', 'b', 'c', 'd']
|
|
@@ -96755,11 +96769,11 @@ var establishRelationAndKeys = function establishRelationAndKeys(namespace) {
|
|
|
96755
96769
|
for (var _e = __values(model.attributes), _f = _e.next(); !_f.done; _f = _e.next()) {
|
|
96756
96770
|
var attribute = _f.value;
|
|
96757
96771
|
|
|
96758
|
-
if (!Object(
|
|
96772
|
+
if (!Object(_types__WEBPACK_IMPORTED_MODULE_4__["isModelAttributeKey"])(attribute)) {
|
|
96759
96773
|
continue;
|
|
96760
96774
|
}
|
|
96761
96775
|
|
|
96762
|
-
if (Object(
|
|
96776
|
+
if (Object(_types__WEBPACK_IMPORTED_MODULE_4__["isModelAttributePrimaryKey"])(attribute)) {
|
|
96763
96777
|
keys[mKey].primaryKey = attribute.properties.fields;
|
|
96764
96778
|
}
|
|
96765
96779
|
|
|
@@ -96986,7 +97000,7 @@ var isPrivateMode = function isPrivateMode() {
|
|
|
96986
97000
|
};
|
|
96987
97001
|
|
|
96988
97002
|
var randomBytes = function randomBytes(nBytes) {
|
|
96989
|
-
return buffer__WEBPACK_IMPORTED_MODULE_0__["Buffer"].from(new
|
|
97003
|
+
return buffer__WEBPACK_IMPORTED_MODULE_0__["Buffer"].from(new amazon_cognito_identity_js__WEBPACK_IMPORTED_MODULE_5__["WordArray"]().random(nBytes).toString(), 'hex');
|
|
96990
97004
|
};
|
|
96991
97005
|
|
|
96992
97006
|
var prng = function prng() {
|
|
@@ -97031,7 +97045,7 @@ function sortCompareFunction(sortPredicates) {
|
|
|
97031
97045
|
var field = predicate.field,
|
|
97032
97046
|
sortDirection = predicate.sortDirection; // reverse result when direction is descending
|
|
97033
97047
|
|
|
97034
|
-
var sortMultiplier = sortDirection ===
|
|
97048
|
+
var sortMultiplier = sortDirection === _types__WEBPACK_IMPORTED_MODULE_4__["SortDirection"].ASCENDING ? 1 : -1;
|
|
97035
97049
|
|
|
97036
97050
|
if (a[field] < b[field]) {
|
|
97037
97051
|
return -1 * sortMultiplier;
|
|
@@ -97220,7 +97234,7 @@ function () {
|
|
|
97220
97234
|
|
|
97221
97235
|
this.timerPromise = new Promise(function (resolve, reject) {
|
|
97222
97236
|
_this.timer = setTimeout(function () {
|
|
97223
|
-
resolve(
|
|
97237
|
+
resolve(_types__WEBPACK_IMPORTED_MODULE_4__["LimitTimerRaceResolvedValues"].TIMER);
|
|
97224
97238
|
}, _this.maxInterval);
|
|
97225
97239
|
});
|
|
97226
97240
|
};
|
|
@@ -97280,13 +97294,41 @@ function () {
|
|
|
97280
97294
|
};
|
|
97281
97295
|
|
|
97282
97296
|
DeferredCallbackResolver.prototype.resolve = function () {
|
|
97283
|
-
this.limitPromise.resolve(
|
|
97297
|
+
this.limitPromise.resolve(_types__WEBPACK_IMPORTED_MODULE_4__["LimitTimerRaceResolvedValues"].LIMIT);
|
|
97284
97298
|
};
|
|
97285
97299
|
|
|
97286
97300
|
return DeferredCallbackResolver;
|
|
97287
97301
|
}();
|
|
97288
97302
|
|
|
97289
97303
|
|
|
97304
|
+
/**
|
|
97305
|
+
* merge two sets of patches created by immer produce.
|
|
97306
|
+
* newPatches take precedent over oldPatches for patches modifying the same path.
|
|
97307
|
+
* In the case many consecutive pathces are merged the original model should
|
|
97308
|
+
* always be the root model.
|
|
97309
|
+
*
|
|
97310
|
+
* Example:
|
|
97311
|
+
* A -> B, patches1
|
|
97312
|
+
* B -> C, patches2
|
|
97313
|
+
*
|
|
97314
|
+
* mergePatches(A, patches1, patches2) to get patches for A -> C
|
|
97315
|
+
*
|
|
97316
|
+
* @param originalSource the original Model the patches should be applied to
|
|
97317
|
+
* @param oldPatches immer produce patch list
|
|
97318
|
+
* @param newPatches immer produce patch list (will take precedence)
|
|
97319
|
+
* @return merged patches
|
|
97320
|
+
*/
|
|
97321
|
+
|
|
97322
|
+
function mergePatches(originalSource, oldPatches, newPatches) {
|
|
97323
|
+
var patchesToMerge = oldPatches.concat(newPatches);
|
|
97324
|
+
var patches;
|
|
97325
|
+
Object(immer__WEBPACK_IMPORTED_MODULE_3__["produce"])(originalSource, function (draft) {
|
|
97326
|
+
Object(immer__WEBPACK_IMPORTED_MODULE_3__["applyPatches"])(draft, patchesToMerge);
|
|
97327
|
+
}, function (p) {
|
|
97328
|
+
patches = p;
|
|
97329
|
+
});
|
|
97330
|
+
return patches;
|
|
97331
|
+
}
|
|
97290
97332
|
|
|
97291
97333
|
/***/ }),
|
|
97292
97334
|
|