react-native-onyx 1.0.9 → 1.0.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.
@@ -489,7 +489,7 @@ function logInfo(message) {
489
489
  \*********************/
490
490
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
491
491
 
492
- var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js");Object.defineProperty(exports, "__esModule", ({ value: true }));exports["default"] = void 0;var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "./node_modules/@babel/runtime/helpers/slicedToArray.js"));var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "./node_modules/@babel/runtime/helpers/toConsumableArray.js"));var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js"));var _extends4 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js"));var _underscore = _interopRequireDefault(__webpack_require__(/*! underscore */ "underscore"));
492
+ var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js");Object.defineProperty(exports, "__esModule", ({ value: true }));exports["default"] = void 0;var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "./node_modules/@babel/runtime/helpers/slicedToArray.js"));var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "./node_modules/@babel/runtime/helpers/toConsumableArray.js"));var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js"));var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js"));var _underscore = _interopRequireDefault(__webpack_require__(/*! underscore */ "underscore"));
493
493
  var _str = _interopRequireDefault(__webpack_require__(/*! expensify-common/lib/str */ "expensify-common/lib/str"));
494
494
  var _merge = _interopRequireDefault(__webpack_require__(/*! lodash/merge */ "lodash/merge"));
495
495
  var _get = _interopRequireDefault(__webpack_require__(/*! lodash/get */ "lodash/get"));
@@ -723,10 +723,10 @@ function getCachedCollection(collectionKey) {
723
723
  if (!cachedValue) {
724
724
  return prev;
725
725
  }
726
- return (0, _extends4.default)({},
727
- prev, (0, _defineProperty2.default)({},
728
- curr, cachedValue));
729
726
 
727
+ // eslint-disable-next-line no-param-reassign
728
+ prev[curr] = cachedValue;
729
+ return prev;
730
730
  }, {});
731
731
  }
732
732
 
@@ -780,7 +780,7 @@ function keysChanged(collectionKey, collection) {
780
780
  }
781
781
 
782
782
  subscriber.withOnyxInstance.setState(function (prevState) {return (0, _defineProperty2.default)({},
783
- subscriber.statePropertyName, _underscore.default.isObject(dataFromCollection) ? (0, _extends4.default)({},
783
+ subscriber.statePropertyName, _underscore.default.isObject(dataFromCollection) ? (0, _extends2.default)({},
784
784
 
785
785
  prevState[subscriber.statePropertyName],
786
786
  dataFromCollection) :
@@ -882,6 +882,7 @@ function sendDataToConnection(config, val, key) {
882
882
  * This is used by any non-React code to connect to Onyx
883
883
  * @param {Boolean} [mapping.initWithStoredValues] If set to false, then no data will be prefilled into the
884
884
  * component
885
+ * @param {Boolean} [mapping.waitForCollectionCallback] If set to true, it will trigger the callback once and return all data as a single object
885
886
  * @returns {Number} an ID to use when calling disconnect
886
887
  */
887
888
  function connect(mapping) {
@@ -932,12 +933,13 @@ function connect(mapping) {
932
933
  // to expect a single key or multiple keys in the case of a collection.
933
934
  // React components are an exception since we'll want to send their
934
935
  // initial data as a single object when using collection keys.
935
- if (mapping.withOnyxInstance && isCollectionKey(mapping.key)) {
936
+ if (mapping.withOnyxInstance && isCollectionKey(mapping.key) || mapping.waitForCollectionCallback) {
936
937
  Promise.all(_underscore.default.map(matchingKeys, function (key) {return get(key);})).
937
- then(function (values) {return _underscore.default.reduce(values, function (finalObject, value, i) {return (0, _extends4.default)({},
938
- finalObject, (0, _defineProperty2.default)({},
939
- matchingKeys[i], value));},
940
- {});}).
938
+ then(function (values) {return _underscore.default.reduce(values, function (finalObject, value, i) {
939
+ // eslint-disable-next-line no-param-reassign
940
+ finalObject[matchingKeys[i]] = value;
941
+ return finalObject;
942
+ }, {});}).
941
943
  then(function (val) {return sendDataToConnection(mapping, val);});
942
944
  } else {
943
945
  _underscore.default.each(matchingKeys, function (key) {