mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-04 17:07:49 +00:00
Move internal modules to “internal” folder.
This commit is contained in:
30
.internal/createToPairs.js
Normal file
30
.internal/createToPairs.js
Normal file
@@ -0,0 +1,30 @@
|
||||
import baseToPairs from './.internal/baseToPairs.js';
|
||||
import getTag from './.internal/getTag.js';
|
||||
import mapToArray from './.internal/mapToArray.js';
|
||||
import setToPairs from './.internal/setToPairs.js';
|
||||
|
||||
/** `Object#toString` result references. */
|
||||
const mapTag = '[object Map]';
|
||||
const setTag = '[object Set]';
|
||||
|
||||
/**
|
||||
* Creates a `toPairs` or `toPairsIn` function.
|
||||
*
|
||||
* @private
|
||||
* @param {Function} keysFunc The function to get the keys of a given object.
|
||||
* @returns {Function} Returns the new pairs function.
|
||||
*/
|
||||
function createToPairs(keysFunc) {
|
||||
return object => {
|
||||
const tag = getTag(object);
|
||||
if (tag == mapTag) {
|
||||
return mapToArray(object);
|
||||
}
|
||||
if (tag == setTag) {
|
||||
return setToPairs(object);
|
||||
}
|
||||
return baseToPairs(object, keysFunc(object));
|
||||
};
|
||||
}
|
||||
|
||||
export default createToPairs;
|
||||
Reference in New Issue
Block a user