| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 | 'use strict';function preserveCamelCase(str) {	var isLastCharLower = false;	for (var i = 0; i < str.length; i++) {		var c = str.charAt(i);		if (isLastCharLower && (/[a-zA-Z]/).test(c) && c.toUpperCase() === c) {			str = str.substr(0, i) + '-' + str.substr(i);			isLastCharLower = false;			i++;		} else {			isLastCharLower = (c.toLowerCase() === c);		}	}	return str;}module.exports = function () {	var str = [].map.call(arguments, function (str) {		return str.trim();	}).filter(function (str) {		return str.length;	}).join('-');	if (!str.length) {		return '';	}	if (str.length === 1) {		return str;	}	if (!(/[_.\- ]+/).test(str)) {		if (str === str.toUpperCase()) {			return str.toLowerCase();		}		if (str[0] !== str[0].toLowerCase()) {			return str[0].toLowerCase() + str.slice(1);		}		return str;	}	str = preserveCamelCase(str);	return str	.replace(/^[_.\- ]+/, '')	.toLowerCase()	.replace(/[_.\- ]+(\w|$)/g, function (m, p1) {		return p1.toUpperCase();	});};
 |