@aws-amplify/datastore 3.4.9-in-app-messaging.35 → 3.4.9-in-app-messaging.49

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 CHANGED
@@ -3,6 +3,22 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.6.0](https://github.com/aws-amplify/amplify-js/compare/@aws-amplify/datastore@3.5.2...@aws-amplify/datastore@3.6.0) (2021-11-12)
7
+
8
+ ### Features
9
+
10
+ - **@aws-amplify/datastore:** ObserveQuery performance and type enhancements ([#9141](https://github.com/aws-amplify/amplify-js/issues/9141)) ([755ce09](https://github.com/aws-amplify/amplify-js/commit/755ce09f5152c54d215f023089f30b2c98ace33a))
11
+
12
+ ## [3.5.2](https://github.com/aws-amplify/amplify-js/compare/@aws-amplify/datastore@3.5.1...@aws-amplify/datastore@3.5.2) (2021-11-09)
13
+
14
+ ### Bug Fixes
15
+
16
+ - **@aws-amplify/datastore:** use forEach instead of map to iterate over unsubscribe callbacks ([#9146](https://github.com/aws-amplify/amplify-js/issues/9146)) ([ec6ee1c](https://github.com/aws-amplify/amplify-js/commit/ec6ee1c066a283e4e34a287db5712f2bb944e6ba))
17
+
18
+ ### Reverts
19
+
20
+ - uuid dependency upgrade ([#9159](https://github.com/aws-amplify/amplify-js/issues/9159)) ([4ef8aa9](https://github.com/aws-amplify/amplify-js/commit/4ef8aa9c7c25dbe921fd02b6205b8defb93fbaec))
21
+
6
22
  ## [3.5.1](https://github.com/aws-amplify/amplify-js/compare/@aws-amplify/datastore@3.5.0...@aws-amplify/datastore@3.5.1) (2021-10-28)
7
23
 
8
24
  **Note:** Version bump only for package @aws-amplify/datastore
@@ -70356,11 +70356,6 @@ var parseMobileHubConfig = function parseMobileHubConfig(config) {
70356
70356
  AmazonLocationService: config.geo['amazon_location_service']
70357
70357
  };
70358
70358
  }
70359
- } // Notifications
70360
-
70361
-
70362
- if (config.Notifications) {
70363
- amplifyConfig.Notifications = Object.assign({}, config.Notifications);
70364
70359
  }
70365
70360
 
70366
70361
  amplifyConfig.Analytics = Object.assign({}, amplifyConfig.Analytics, config.Analytics);
@@ -70464,7 +70459,7 @@ var getAmplifyUserAgent = function getAmplifyUserAgent() {
70464
70459
  __webpack_require__.r(__webpack_exports__);
70465
70460
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "version", function() { return version; });
70466
70461
  // generated by genversion
70467
- var version = '4.3.4';
70462
+ var version = '4.3.6';
70468
70463
 
70469
70464
  /***/ }),
70470
70465
 
@@ -82347,6 +82342,23 @@ function () {
82347
82342
  var deletedItemIds = [];
82348
82343
  var handle;
82349
82344
 
82345
+ var generateAndEmitSnapshot = function generateAndEmitSnapshot() {
82346
+ var snapshot = generateSnapshot();
82347
+ emitSnapshot(snapshot);
82348
+ }; // a mechanism to return data after X amount of seconds OR after the
82349
+ // "limit" (itemsChanged >= this.syncPageSize) has been reached, whichever comes first
82350
+
82351
+
82352
+ var limitTimerRace = new _util__WEBPACK_IMPORTED_MODULE_9__["DeferredCallbackResolver"]({
82353
+ callback: generateAndEmitSnapshot,
82354
+ errorHandler: observer.error,
82355
+ maxInterval: 2000
82356
+ });
82357
+ var sort = (options || {}).sort;
82358
+ var sortOptions = sort ? {
82359
+ sort: sort
82360
+ } : undefined;
82361
+
82350
82362
  (function () {
82351
82363
  return __awaiter(_this, void 0, void 0, function () {
82352
82364
  var err_1;
@@ -82360,7 +82372,7 @@ function () {
82360
82372
 
82361
82373
  return [4
82362
82374
  /*yield*/
82363
- , this.query(model, criteria, options)];
82375
+ , this.query(model, criteria, sortOptions)];
82364
82376
 
82365
82377
  case 1:
82366
82378
  // first, query and return any locally-available records
@@ -82386,10 +82398,15 @@ function () {
82386
82398
 
82387
82399
  var isSynced = _this.sync.getModelSyncedStatus(model);
82388
82400
 
82389
- if (itemsChanged.size - deletedItemIds.length >= _this.syncPageSize || isSynced) {
82390
- generateAndEmitSnapshot();
82391
- }
82392
- }); // will return any locally-available items in the first snapshot
82401
+ var limit = itemsChanged.size - deletedItemIds.length >= _this.syncPageSize;
82402
+
82403
+ if (limit || isSynced) {
82404
+ limitTimerRace.resolve();
82405
+ } // kicks off every subsequent race as results sync down
82406
+
82407
+
82408
+ limitTimerRace.start();
82409
+ }); // returns a set of initial/locally-available results
82393
82410
 
82394
82411
  generateAndEmitSnapshot();
82395
82412
  return [3
@@ -82444,11 +82461,6 @@ function () {
82444
82461
  deletedItemIds = [];
82445
82462
  };
82446
82463
 
82447
- var generateAndEmitSnapshot = function generateAndEmitSnapshot() {
82448
- var snapshot = generateSnapshot();
82449
- emitSnapshot(snapshot);
82450
- };
82451
-
82452
82464
  var sortItems = function sortItems(itemsToSort) {
82453
82465
  var modelDefinition = getModelDefinition(model);
82454
82466
 
@@ -82827,7 +82839,7 @@ _aws_amplify_core__WEBPACK_IMPORTED_MODULE_0__["Amplify"].register(instance);
82827
82839
  /*!**************************!*\
82828
82840
  !*** ./lib-esm/index.js ***!
82829
82841
  \**************************/
82830
- /*! exports provided: DataStore, DataStoreClass, initSchema, Predicates, ModelPredicateCreator, ModelSortPredicateCreator, utils, isSchemaModel, isAssociatedWith, isTargetNameAssociation, isModelAttributeAuth, isModelAttributeKey, isModelAttributePrimaryKey, isModelAttributeCompositeKey, ModelAttributeAuthAllow, ModelAttributeAuthProvider, GraphQLScalarType, isGraphQLScalarType, isModelFieldType, isNonModelFieldType, isEnumFieldType, OpType, isPredicateObj, isPredicateGroup, QueryOne, SortDirection, AuthModeStrategyType, ModelOperation, syncExpression, DISCARD */
82842
+ /*! exports provided: DataStore, DataStoreClass, initSchema, Predicates, ModelPredicateCreator, ModelSortPredicateCreator, utils, isSchemaModel, isAssociatedWith, isTargetNameAssociation, isModelAttributeAuth, isModelAttributeKey, isModelAttributePrimaryKey, isModelAttributeCompositeKey, ModelAttributeAuthAllow, ModelAttributeAuthProvider, GraphQLScalarType, isGraphQLScalarType, isModelFieldType, isNonModelFieldType, isEnumFieldType, OpType, isPredicateObj, isPredicateGroup, QueryOne, SortDirection, AuthModeStrategyType, ModelOperation, syncExpression, DISCARD, LimitTimerRaceResolvedValues */
82831
82843
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
82832
82844
 
82833
82845
  "use strict";
@@ -82895,6 +82907,8 @@ __webpack_require__.r(__webpack_exports__);
82895
82907
 
82896
82908
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DISCARD", function() { return _types__WEBPACK_IMPORTED_MODULE_3__["DISCARD"]; });
82897
82909
 
82910
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "LimitTimerRaceResolvedValues", function() { return _types__WEBPACK_IMPORTED_MODULE_3__["LimitTimerRaceResolvedValues"]; });
82911
+
82898
82912
 
82899
82913
 
82900
82914
 
@@ -94605,7 +94619,7 @@ function getTokenForCustomAuth(authMode, amplifyConfig) {
94605
94619
  /*!**************************!*\
94606
94620
  !*** ./lib-esm/types.js ***!
94607
94621
  \**************************/
94608
- /*! exports provided: isSchemaModel, isAssociatedWith, isTargetNameAssociation, isModelAttributeAuth, isModelAttributeKey, isModelAttributePrimaryKey, isModelAttributeCompositeKey, ModelAttributeAuthAllow, ModelAttributeAuthProvider, GraphQLScalarType, isGraphQLScalarType, isModelFieldType, isNonModelFieldType, isEnumFieldType, OpType, isPredicateObj, isPredicateGroup, QueryOne, SortDirection, AuthModeStrategyType, ModelOperation, syncExpression, DISCARD */
94622
+ /*! exports provided: isSchemaModel, isAssociatedWith, isTargetNameAssociation, isModelAttributeAuth, isModelAttributeKey, isModelAttributePrimaryKey, isModelAttributeCompositeKey, ModelAttributeAuthAllow, ModelAttributeAuthProvider, GraphQLScalarType, isGraphQLScalarType, isModelFieldType, isNonModelFieldType, isEnumFieldType, OpType, isPredicateObj, isPredicateGroup, QueryOne, SortDirection, AuthModeStrategyType, ModelOperation, syncExpression, DISCARD, LimitTimerRaceResolvedValues */
94609
94623
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
94610
94624
 
94611
94625
  "use strict";
@@ -94633,6 +94647,7 @@ __webpack_require__.r(__webpack_exports__);
94633
94647
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ModelOperation", function() { return ModelOperation; });
94634
94648
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "syncExpression", function() { return syncExpression; });
94635
94649
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DISCARD", function() { return DISCARD; });
94650
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "LimitTimerRaceResolvedValues", function() { return LimitTimerRaceResolvedValues; });
94636
94651
  /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "./lib-esm/util.js");
94637
94652
  var __awaiter = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
94638
94653
  function adopt(value) {
@@ -94983,7 +94998,13 @@ function syncExpression(modelConstructor, conditionProducer) {
94983
94998
  });
94984
94999
  });
94985
95000
  }
94986
- var DISCARD = Symbol('DISCARD'); //#endregion
95001
+ var DISCARD = Symbol('DISCARD');
95002
+ var LimitTimerRaceResolvedValues;
95003
+
95004
+ (function (LimitTimerRaceResolvedValues) {
95005
+ LimitTimerRaceResolvedValues["LIMIT"] = "LIMIT";
95006
+ LimitTimerRaceResolvedValues["TIMER"] = "TIMER";
95007
+ })(LimitTimerRaceResolvedValues || (LimitTimerRaceResolvedValues = {})); //#endregion
94987
95008
 
94988
95009
  /***/ }),
94989
95010
 
@@ -94991,7 +95012,7 @@ var DISCARD = Symbol('DISCARD'); //#endregion
94991
95012
  /*!*************************!*\
94992
95013
  !*** ./lib-esm/util.js ***!
94993
95014
  \*************************/
94994
- /*! 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 */
95015
+ /*! 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 */
94995
95016
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
94996
95017
 
94997
95018
  "use strict";
@@ -95027,6 +95048,8 @@ __webpack_require__.r(__webpack_exports__);
95027
95048
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isAWSURL", function() { return isAWSURL; });
95028
95049
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isAWSPhone", function() { return isAWSPhone; });
95029
95050
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isAWSIPAddress", function() { return isAWSIPAddress; });
95051
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DeferredPromise", function() { return DeferredPromise; });
95052
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DeferredCallbackResolver", function() { return DeferredCallbackResolver; });
95030
95053
  /* harmony import */ var buffer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! buffer */ "../../node_modules/buffer/index.js");
95031
95054
  /* harmony import */ var buffer__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(buffer__WEBPACK_IMPORTED_MODULE_0__);
95032
95055
  /* harmony import */ var ulid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ulid */ "../../node_modules/ulid/dist/index.esm.js");
@@ -95890,6 +95913,117 @@ var isAWSIPAddress = function isAWSIPAddress(val) {
95890
95913
  return !!/((^((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))$)|(^((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?$))$/.exec(val);
95891
95914
  };
95892
95915
 
95916
+ var DeferredPromise =
95917
+ /** @class */
95918
+ function () {
95919
+ function DeferredPromise() {
95920
+ var self = this;
95921
+ this.promise = new Promise(function (resolve, reject) {
95922
+ self.resolve = resolve;
95923
+ self.reject = reject;
95924
+ });
95925
+ }
95926
+
95927
+ return DeferredPromise;
95928
+ }();
95929
+
95930
+
95931
+
95932
+ var DeferredCallbackResolver =
95933
+ /** @class */
95934
+ function () {
95935
+ function DeferredCallbackResolver(options) {
95936
+ this.limitPromise = new DeferredPromise();
95937
+ this.raceInFlight = false;
95938
+
95939
+ this.callback = function () {};
95940
+
95941
+ this.defaultErrorHandler = function (msg) {
95942
+ if (msg === void 0) {
95943
+ msg = 'DeferredCallbackResolver error';
95944
+ }
95945
+
95946
+ throw new Error(msg);
95947
+ };
95948
+
95949
+ this.callback = options.callback;
95950
+ this.errorHandler = options.errorHandler || this.defaultErrorHandler;
95951
+ this.maxInterval = options.maxInterval || 2000;
95952
+ }
95953
+
95954
+ DeferredCallbackResolver.prototype.startTimer = function () {
95955
+ var _this = this;
95956
+
95957
+ this.timerPromise = new Promise(function (resolve, reject) {
95958
+ _this.timer = setTimeout(function () {
95959
+ resolve(_types__WEBPACK_IMPORTED_MODULE_3__["LimitTimerRaceResolvedValues"].TIMER);
95960
+ }, _this.maxInterval);
95961
+ });
95962
+ };
95963
+
95964
+ DeferredCallbackResolver.prototype.racePromises = function () {
95965
+ return __awaiter(this, void 0, void 0, function () {
95966
+ var winner, err_1;
95967
+ return __generator(this, function (_c) {
95968
+ switch (_c.label) {
95969
+ case 0:
95970
+ _c.trys.push([0, 2, 3, 4]);
95971
+
95972
+ this.raceInFlight = true;
95973
+ this.startTimer();
95974
+ return [4
95975
+ /*yield*/
95976
+ , Promise.race([this.timerPromise, this.limitPromise.promise])];
95977
+
95978
+ case 1:
95979
+ winner = _c.sent();
95980
+ this.callback();
95981
+ return [3
95982
+ /*break*/
95983
+ , 4];
95984
+
95985
+ case 2:
95986
+ err_1 = _c.sent();
95987
+ this.errorHandler(err_1);
95988
+ return [3
95989
+ /*break*/
95990
+ , 4];
95991
+
95992
+ case 3:
95993
+ // reset for the next race
95994
+ this.clear();
95995
+ this.raceInFlight = false;
95996
+ this.limitPromise = new DeferredPromise();
95997
+ return [2
95998
+ /*return*/
95999
+ , winner];
96000
+
96001
+ case 4:
96002
+ return [2
96003
+ /*return*/
96004
+ ];
96005
+ }
96006
+ });
96007
+ });
96008
+ };
96009
+
96010
+ DeferredCallbackResolver.prototype.start = function () {
96011
+ if (!this.raceInFlight) this.racePromises();
96012
+ };
96013
+
96014
+ DeferredCallbackResolver.prototype.clear = function () {
96015
+ clearTimeout(this.timer);
96016
+ };
96017
+
96018
+ DeferredCallbackResolver.prototype.resolve = function () {
96019
+ this.limitPromise.resolve(_types__WEBPACK_IMPORTED_MODULE_3__["LimitTimerRaceResolvedValues"].LIMIT);
96020
+ };
96021
+
96022
+ return DeferredCallbackResolver;
96023
+ }();
96024
+
96025
+
96026
+
95893
96027
  /***/ }),
95894
96028
 
95895
96029
  /***/ "./node_modules/immer/dist/immer.esm.js":