33 lines
1.1 KiB
Plaintext
33 lines
1.1 KiB
Plaintext
|
/**
|
||
|
* Copyright (c) 2013-present, 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 keyOf
|
||
|
*/
|
||
|
|
||
|
/**
|
||
|
* Allows extraction of a minified key. Let's the build system minify keys
|
||
|
* without losing the ability to dynamically use key strings as values
|
||
|
* themselves. Pass in an object with a single key/val pair and it will return
|
||
|
* you the string key of that single record. Suppose you want to grab the
|
||
|
* value for a key 'className' inside of an object. Key/val minification may
|
||
|
* have aliased that key to be 'xa12'. keyOf({className: null}) will return
|
||
|
* 'xa12' in that case. Resolve keys you want to use once at startup time, then
|
||
|
* reuse those resolutions.
|
||
|
*/
|
||
|
var keyOf = function (oneKeyObj) {
|
||
|
var key;
|
||
|
for (key in oneKeyObj) {
|
||
|
if (!oneKeyObj.hasOwnProperty(key)) {
|
||
|
continue;
|
||
|
}
|
||
|
return key;
|
||
|
}
|
||
|
return null;
|
||
|
};
|
||
|
|
||
|
module.exports = keyOf;
|