| 1
2
3
4
5
6
7
8
9
10
11
12
13
 | | 'use strict'; |  | module.exports = function (str, sep) { |  |     if (typeof str !== 'string') { |  |         throw new TypeError('Expected a string'); |  |     } |  |   |  |     sep = typeof sep === 'undefined' ? '_' : sep; |  |   |  |     return str |  |         .replace(/([a-z\d])([A-Z])/g, '$1' + sep + '$2') |  |         .replace(/([A-Z]+)([A-Z][a-z\d]+)/g, '$1' + sep + '$2') |  |         .toLowerCase(); |  | }; | 
 |