Spaces:
Runtime error
Runtime error
var arrayReduce = require('./_arrayReduce'), | |
deburr = require('./deburr'), | |
words = require('./words'); | |
/** Used to compose unicode capture groups. */ | |
var rsApos = "['\u2019]"; | |
/** Used to match apostrophes. */ | |
var reApos = RegExp(rsApos, '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 function(string) { | |
return arrayReduce(words(deburr(string).replace(reApos, '')), callback, ''); | |
}; | |
} | |
module.exports = createCompounder; | |