/* */ var trim = function(string, TYPE) { string = String(defined(string)); if (TYPE & 1) string = string.replace(ltrim, ''); if (TYPE & 2) string = string.replace(rtrim, ''); return string; }; var $def = require('./$.def'), defined = require('./$.defined'), spaces = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' + '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF', space = '[' + spaces + ']', non = '\u200b\u0085', ltrim = RegExp('^' + space + space + '*'), rtrim = RegExp(space + space + '*$'); module.exports = function(KEY, exec) { var exp = {}; exp[KEY] = exec(trim); $def($def.P + $def.F * require('./$.fails')(function() { return !!spaces[KEY]() || non[KEY]() != non; }), 'String', exp); };