Files
lodash/.internal/createCompounder.js
2017-03-15 22:34:15 -07:00

21 lines
499 B
JavaScript

import arrayReduce from './arrayReduce.js'
import words from '../words.js'
/** Used to match apostrophes. */
const reApos = /['\u2019]/g
/**
* Creates a function like `camelCase`.
*
* @private
* @param {Function} callback The function to combine each word.
* @returns {Function} Returns the new compounder function.
*/
function createCompounder(callback) {
return (string) => (
arrayReduce(words(`${ string }`.replace(reApos, '')), callback, '')
)
}
export default createCompounder