arrayContainsObject.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. "use strict";
  2. var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
  3. var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
  4. _Object$defineProperty(exports, "__esModule", {
  5. value: true
  6. });
  7. exports.default = arrayContainsObject;
  8. var _indexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/index-of"));
  9. var _ParseObject = _interopRequireDefault(require("./ParseObject"));
  10. /**
  11. * Copyright (c) 2015-present, Parse, LLC.
  12. * All rights reserved.
  13. *
  14. * This source code is licensed under the BSD-style license found in the
  15. * LICENSE file in the root directory of this source tree. An additional grant
  16. * of patent rights can be found in the PATENTS file in the same directory.
  17. *
  18. * @flow
  19. */
  20. function arrayContainsObject(array
  21. /*: Array<any>*/
  22. , object
  23. /*: ParseObject*/
  24. )
  25. /*: boolean*/
  26. {
  27. if ((0, _indexOf.default)(array).call(array, object) > -1) {
  28. return true;
  29. }
  30. for (var i = 0; i < array.length; i++) {
  31. if (array[i] instanceof _ParseObject.default && array[i].className === object.className && array[i]._getId() === object._getId()) {
  32. return true;
  33. }
  34. }
  35. return false;
  36. }