UNPKG

react-relay

Version:

A framework for building data-driven React applications.

37 lines (31 loc) 996 B
/** * Copyright 2013-2015, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * @providesModule filterExclusiveKeys * @typechecks * */ 'use strict'; var _Object$keys = require('babel-runtime/core-js/object/keys')['default']; var hasOwnProperty = Object.prototype.hasOwnProperty; /** * Returns two arrays of keys that contain each object's exclusive keys. */ function filterExclusiveKeys(a, b) { var keysA = a ? _Object$keys(a) : []; var keysB = b ? _Object$keys(b) : []; if (keysA.length === 0 || keysB.length === 0) { return [keysA, keysB]; } return [keysA.filter(function (key) { return !hasOwnProperty.call(b, key); }), keysB.filter(function (key) { return !hasOwnProperty.call(a, key); })]; } module.exports = filterExclusiveKeys;