You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							31 lines
						
					
					
						
							899 B
						
					
					
				
			
		
		
	
	
							31 lines
						
					
					
						
							899 B
						
					
					
				| var $export = require('./_export');
 | |
| var defined = require('./_defined');
 | |
| var fails = require('./_fails');
 | |
| var spaces = require('./_string-ws');
 | |
| var space = '[' + spaces + ']';
 | |
| var non = '\u200b\u0085';
 | |
| var ltrim = RegExp('^' + space + space + '*');
 | |
| var rtrim = RegExp(space + space + '*$');
 | |
| 
 | |
| var exporter = function (KEY, exec, ALIAS) {
 | |
|   var exp = {};
 | |
|   var FORCE = fails(function () {
 | |
|     return !!spaces[KEY]() || non[KEY]() != non;
 | |
|   });
 | |
|   var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
 | |
|   if (ALIAS) exp[ALIAS] = fn;
 | |
|   $export($export.P + $export.F * FORCE, 'String', exp);
 | |
| };
 | |
| 
 | |
| // 1 -> String#trimLeft
 | |
| // 2 -> String#trimRight
 | |
| // 3 -> String#trim
 | |
| var trim = exporter.trim = function (string, TYPE) {
 | |
|   string = String(defined(string));
 | |
|   if (TYPE & 1) string = string.replace(ltrim, '');
 | |
|   if (TYPE & 2) string = string.replace(rtrim, '');
 | |
|   return string;
 | |
| };
 | |
| 
 | |
| module.exports = exporter;
 |