/ cloudformation-templates / node_modules / lodash / _createCompounder.js
_createCompounder.js
 1  var arrayReduce = require('./_arrayReduce'),
 2      deburr = require('./deburr'),
 3      words = require('./words');
 4  
 5  /** Used to compose unicode capture groups. */
 6  var rsApos = "['\u2019]";
 7  
 8  /** Used to match apostrophes. */
 9  var reApos = RegExp(rsApos, 'g');
10  
11  /**
12   * Creates a function like `_.camelCase`.
13   *
14   * @private
15   * @param {Function} callback The function to combine each word.
16   * @returns {Function} Returns the new compounder function.
17   */
18  function createCompounder(callback) {
19    return function(string) {
20      return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');
21    };
22  }
23  
24  module.exports = createCompounder;