braintree-web
Version:
A suite of tools for integrating Braintree in the browser
20 lines (15 loc) • 494 B
JavaScript
;
// Taken from https://github.com/sindresorhus/decamelize/blob/95980ab6fb44c40eaca7792bdf93aff7c210c805/index.js
function transformKey(key) {
return key
.replace(/([a-z\d])([A-Z])/g, "$1_$2")
.replace(/([A-Z]+)([A-Z][a-z\d]+)/g, "$1_$2")
.toLowerCase();
}
module.exports = function (obj) {
return Object.keys(obj).reduce(function (newObj, key) {
var transformedKey = transformKey(key);
newObj[transformedKey] = obj[key];
return newObj;
}, {});
};