placeholders
Version:
Replace placeholder values in a file path.
26 lines (20 loc) • 607 B
JavaScript
/*!
* placeholders <https://github.com/jonschlinkert/placeholders>
*
* Copyright (c) 2015, 2017, Jon Schlinkert.
* Released under the MIT License.
*/
;
var assign = require('assign-deep');
var expand = require('expand');
module.exports = function placeholders(options) {
var opts = assign({ regex: /:([(\w ),.]+)/ }, options);
var resolve = expand(opts);
return function interpolate(val, locals) {
if (arguments.length === 1 && !opts.data) {
return interpolate.bind(null, val);
}
locals = assign({}, opts.data, locals);
return resolve(val, locals);
};
};