Merge 7c02485033 into d8e155968e
This commit is contained in:
commit
07ca0a4bd5
350
browser.js
350
browser.js
@ -156,8 +156,120 @@ function unescape(str) {
|
||||
return str;
|
||||
}
|
||||
|
||||
},{"glob-base":4,"is-dotfile":6,"is-extglob":7,"is-glob":8}],2:[function(require,module,exports){
|
||||
},{"glob-base":2,"is-dotfile":4,"is-extglob":5,"is-glob":6}],2:[function(require,module,exports){
|
||||
/*!
|
||||
* glob-base <https://github.com/jonschlinkert/glob-base>
|
||||
*
|
||||
* Copyright (c) 2015, Jon Schlinkert.
|
||||
* Licensed under the MIT License.
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
var path = require('path');
|
||||
var parent = require('glob-parent');
|
||||
var isGlob = require('is-glob');
|
||||
|
||||
module.exports = function globBase(pattern) {
|
||||
if (typeof pattern !== 'string') {
|
||||
throw new TypeError('glob-base expects a string.');
|
||||
}
|
||||
|
||||
var res = {};
|
||||
res.base = parent(pattern);
|
||||
res.isGlob = isGlob(pattern);
|
||||
|
||||
if (res.base !== '.') {
|
||||
res.glob = pattern.substr(res.base.length);
|
||||
if (res.glob.charAt(0) === '/') {
|
||||
res.glob = res.glob.substr(1);
|
||||
}
|
||||
} else {
|
||||
res.glob = pattern;
|
||||
}
|
||||
|
||||
if (!res.isGlob) {
|
||||
res.base = dirname(pattern);
|
||||
res.glob = res.base !== '.'
|
||||
? pattern.substr(res.base.length)
|
||||
: pattern;
|
||||
}
|
||||
|
||||
if (res.glob.substr(0, 2) === './') {
|
||||
res.glob = res.glob.substr(2);
|
||||
}
|
||||
if (res.glob.charAt(0) === '/') {
|
||||
res.glob = res.glob.substr(1);
|
||||
}
|
||||
return res;
|
||||
};
|
||||
|
||||
function dirname(glob) {
|
||||
if (glob.slice(-1) === '/') return glob;
|
||||
return path.dirname(glob);
|
||||
}
|
||||
|
||||
},{"glob-parent":3,"is-glob":6,"path":7}],3:[function(require,module,exports){
|
||||
'use strict';
|
||||
|
||||
var path = require('path');
|
||||
var isglob = require('is-glob');
|
||||
|
||||
module.exports = function globParent(str) {
|
||||
str += 'a'; // preserves full path in case of trailing path separator
|
||||
do {str = path.dirname(str)} while (isglob(str));
|
||||
return str;
|
||||
};
|
||||
|
||||
},{"is-glob":6,"path":7}],4:[function(require,module,exports){
|
||||
/*!
|
||||
* is-dotfile <https://github.com/jonschlinkert/is-dotfile>
|
||||
*
|
||||
* Copyright (c) 2015-2017, Jon Schlinkert.
|
||||
* Released under the MIT License.
|
||||
*/
|
||||
|
||||
module.exports = function(str) {
|
||||
if (str.charCodeAt(0) === 46 /* . */ && str.indexOf('/', 1) === -1) {
|
||||
return true;
|
||||
}
|
||||
var slash = str.lastIndexOf('/');
|
||||
return slash !== -1 ? str.charCodeAt(slash + 1) === 46 /* . */ : false;
|
||||
};
|
||||
|
||||
},{}],5:[function(require,module,exports){
|
||||
/*!
|
||||
* is-extglob <https://github.com/jonschlinkert/is-extglob>
|
||||
*
|
||||
* Copyright (c) 2014-2015, Jon Schlinkert.
|
||||
* Licensed under the MIT License.
|
||||
*/
|
||||
|
||||
module.exports = function isExtglob(str) {
|
||||
return typeof str === 'string'
|
||||
&& /[@?!+*]\(/.test(str);
|
||||
};
|
||||
|
||||
},{}],6:[function(require,module,exports){
|
||||
/*!
|
||||
* is-glob <https://github.com/jonschlinkert/is-glob>
|
||||
*
|
||||
* Copyright (c) 2014-2015, Jon Schlinkert.
|
||||
* Licensed under the MIT License.
|
||||
*/
|
||||
|
||||
var isExtglob = require('is-extglob');
|
||||
|
||||
module.exports = function isGlob(str) {
|
||||
return typeof str === 'string'
|
||||
&& (/[*!?{}(|)[\]]/.test(str)
|
||||
|| isExtglob(str));
|
||||
};
|
||||
},{"is-extglob":5}],7:[function(require,module,exports){
|
||||
(function (process){
|
||||
// .dirname, .basename, and .extname methods are extracted from Node.js v8.11.1,
|
||||
// backported and transplited with Babel, with backwards-compat fixes
|
||||
|
||||
// Copyright Joyent, Inc. and other Node contributors.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@ -209,14 +321,6 @@ function normalizeArray(parts, allowAboveRoot) {
|
||||
return parts;
|
||||
}
|
||||
|
||||
// Split a filename into [root, dir, basename, ext], unix version
|
||||
// 'root' is just a slash, or nothing.
|
||||
var splitPathRe =
|
||||
/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;
|
||||
var splitPath = function(filename) {
|
||||
return splitPathRe.exec(filename).slice(1);
|
||||
};
|
||||
|
||||
// path.resolve([from ...], to)
|
||||
// posix version
|
||||
exports.resolve = function() {
|
||||
@ -332,37 +436,120 @@ exports.relative = function(from, to) {
|
||||
exports.sep = '/';
|
||||
exports.delimiter = ':';
|
||||
|
||||
exports.dirname = function(path) {
|
||||
var result = splitPath(path),
|
||||
root = result[0],
|
||||
dir = result[1];
|
||||
|
||||
if (!root && !dir) {
|
||||
// No dirname whatsoever
|
||||
return '.';
|
||||
exports.dirname = function (path) {
|
||||
if (typeof path !== 'string') path = path + '';
|
||||
if (path.length === 0) return '.';
|
||||
var code = path.charCodeAt(0);
|
||||
var hasRoot = code === 47 /*/*/;
|
||||
var end = -1;
|
||||
var matchedSlash = true;
|
||||
for (var i = path.length - 1; i >= 1; --i) {
|
||||
code = path.charCodeAt(i);
|
||||
if (code === 47 /*/*/) {
|
||||
if (!matchedSlash) {
|
||||
end = i;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
// We saw the first non-path separator
|
||||
matchedSlash = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (dir) {
|
||||
// It has a dirname, strip trailing slash
|
||||
dir = dir.substr(0, dir.length - 1);
|
||||
if (end === -1) return hasRoot ? '/' : '.';
|
||||
if (hasRoot && end === 1) {
|
||||
// return '//';
|
||||
// Backwards-compat fix:
|
||||
return '/';
|
||||
}
|
||||
|
||||
return root + dir;
|
||||
return path.slice(0, end);
|
||||
};
|
||||
|
||||
function basename(path) {
|
||||
if (typeof path !== 'string') path = path + '';
|
||||
|
||||
exports.basename = function(path, ext) {
|
||||
var f = splitPath(path)[2];
|
||||
// TODO: make this comparison case-insensitive on windows?
|
||||
var start = 0;
|
||||
var end = -1;
|
||||
var matchedSlash = true;
|
||||
var i;
|
||||
|
||||
for (i = path.length - 1; i >= 0; --i) {
|
||||
if (path.charCodeAt(i) === 47 /*/*/) {
|
||||
// If we reached a path separator that was not part of a set of path
|
||||
// separators at the end of the string, stop now
|
||||
if (!matchedSlash) {
|
||||
start = i + 1;
|
||||
break;
|
||||
}
|
||||
} else if (end === -1) {
|
||||
// We saw the first non-path separator, mark this as the end of our
|
||||
// path component
|
||||
matchedSlash = false;
|
||||
end = i + 1;
|
||||
}
|
||||
}
|
||||
|
||||
if (end === -1) return '';
|
||||
return path.slice(start, end);
|
||||
}
|
||||
|
||||
// Uses a mixed approach for backwards-compatibility, as ext behavior changed
|
||||
// in new Node.js versions, so only basename() above is backported here
|
||||
exports.basename = function (path, ext) {
|
||||
var f = basename(path);
|
||||
if (ext && f.substr(-1 * ext.length) === ext) {
|
||||
f = f.substr(0, f.length - ext.length);
|
||||
}
|
||||
return f;
|
||||
};
|
||||
|
||||
exports.extname = function (path) {
|
||||
if (typeof path !== 'string') path = path + '';
|
||||
var startDot = -1;
|
||||
var startPart = 0;
|
||||
var end = -1;
|
||||
var matchedSlash = true;
|
||||
// Track the state of characters (if any) we see before our first dot and
|
||||
// after any path separator we find
|
||||
var preDotState = 0;
|
||||
for (var i = path.length - 1; i >= 0; --i) {
|
||||
var code = path.charCodeAt(i);
|
||||
if (code === 47 /*/*/) {
|
||||
// If we reached a path separator that was not part of a set of path
|
||||
// separators at the end of the string, stop now
|
||||
if (!matchedSlash) {
|
||||
startPart = i + 1;
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (end === -1) {
|
||||
// We saw the first non-path separator, mark this as the end of our
|
||||
// extension
|
||||
matchedSlash = false;
|
||||
end = i + 1;
|
||||
}
|
||||
if (code === 46 /*.*/) {
|
||||
// If this is our first dot, mark it as the start of our extension
|
||||
if (startDot === -1)
|
||||
startDot = i;
|
||||
else if (preDotState !== 1)
|
||||
preDotState = 1;
|
||||
} else if (startDot !== -1) {
|
||||
// We saw a non-dot and non-path separator before our dot, so we should
|
||||
// have a good chance at having a non-empty extension
|
||||
preDotState = -1;
|
||||
}
|
||||
}
|
||||
|
||||
exports.extname = function(path) {
|
||||
return splitPath(path)[3];
|
||||
if (startDot === -1 || end === -1 ||
|
||||
// We saw a non-dot character immediately before the dot
|
||||
preDotState === 0 ||
|
||||
// The (right-most) trimmed path component is exactly '..'
|
||||
preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {
|
||||
return '';
|
||||
}
|
||||
return path.slice(startDot, end);
|
||||
};
|
||||
|
||||
function filter (xs, f) {
|
||||
@ -384,7 +571,7 @@ var substr = 'ab'.substr(-1) === 'b'
|
||||
;
|
||||
|
||||
}).call(this,require('_process'))
|
||||
},{"_process":3}],3:[function(require,module,exports){
|
||||
},{"_process":8}],8:[function(require,module,exports){
|
||||
// shim for using process in browser
|
||||
|
||||
var process = module.exports = {};
|
||||
@ -444,111 +631,4 @@ process.chdir = function (dir) {
|
||||
};
|
||||
process.umask = function() { return 0; };
|
||||
|
||||
},{}],4:[function(require,module,exports){
|
||||
/*!
|
||||
* glob-base <https://github.com/jonschlinkert/glob-base>
|
||||
*
|
||||
* Copyright (c) 2015, Jon Schlinkert.
|
||||
* Licensed under the MIT License.
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
var path = require('path');
|
||||
var parent = require('glob-parent');
|
||||
var isGlob = require('is-glob');
|
||||
|
||||
module.exports = function globBase(pattern) {
|
||||
if (typeof pattern !== 'string') {
|
||||
throw new TypeError('glob-base expects a string.');
|
||||
}
|
||||
|
||||
var res = {};
|
||||
res.base = parent(pattern);
|
||||
res.isGlob = isGlob(pattern);
|
||||
|
||||
if (res.base !== '.') {
|
||||
res.glob = pattern.substr(res.base.length);
|
||||
if (res.glob.charAt(0) === '/') {
|
||||
res.glob = res.glob.substr(1);
|
||||
}
|
||||
} else {
|
||||
res.glob = pattern;
|
||||
}
|
||||
|
||||
if (!res.isGlob) {
|
||||
res.base = dirname(pattern);
|
||||
res.glob = res.base !== '.'
|
||||
? pattern.substr(res.base.length)
|
||||
: pattern;
|
||||
}
|
||||
|
||||
if (res.glob.substr(0, 2) === './') {
|
||||
res.glob = res.glob.substr(2);
|
||||
}
|
||||
if (res.glob.charAt(0) === '/') {
|
||||
res.glob = res.glob.substr(1);
|
||||
}
|
||||
return res;
|
||||
};
|
||||
|
||||
function dirname(glob) {
|
||||
if (glob.slice(-1) === '/') return glob;
|
||||
return path.dirname(glob);
|
||||
}
|
||||
|
||||
},{"glob-parent":5,"is-glob":8,"path":2}],5:[function(require,module,exports){
|
||||
'use strict';
|
||||
|
||||
var path = require('path');
|
||||
var isglob = require('is-glob');
|
||||
|
||||
module.exports = function globParent(str) {
|
||||
str += 'a'; // preserves full path in case of trailing path separator
|
||||
do {str = path.dirname(str)} while (isglob(str));
|
||||
return str;
|
||||
};
|
||||
|
||||
},{"is-glob":8,"path":2}],6:[function(require,module,exports){
|
||||
/*!
|
||||
* is-dotfile <https://github.com/regexps/is-dotfile>
|
||||
*
|
||||
* Copyright (c) 2015 Jon Schlinkert, contributors.
|
||||
* Licensed under the MIT license.
|
||||
*/
|
||||
|
||||
module.exports = function(str) {
|
||||
if (str.charCodeAt(0) === 46 /* . */ && str.indexOf('/', 1) === -1) {
|
||||
return true;
|
||||
}
|
||||
|
||||
var last = str.lastIndexOf('/');
|
||||
return last !== -1 ? str.charCodeAt(last + 1) === 46 /* . */ : false;
|
||||
};
|
||||
|
||||
},{}],7:[function(require,module,exports){
|
||||
/*!
|
||||
* is-extglob <https://github.com/jonschlinkert/is-extglob>
|
||||
*
|
||||
* Copyright (c) 2014-2015, Jon Schlinkert.
|
||||
* Licensed under the MIT License.
|
||||
*/
|
||||
|
||||
module.exports = function isExtglob(str) {
|
||||
return typeof str === 'string'
|
||||
&& /[@?!+*]\(/.test(str);
|
||||
};
|
||||
|
||||
},{}],8:[function(require,module,exports){
|
||||
/*!
|
||||
* is-glob <https://github.com/jonschlinkert/is-glob>
|
||||
*
|
||||
* Copyright (c) 2014-2015, Jon Schlinkert.
|
||||
* Licensed under the MIT License.
|
||||
*/
|
||||
|
||||
module.exports = function isGlob(str) {
|
||||
return typeof str === 'string'
|
||||
&& /[@!*+{}?(|)[\]]/.test(str);
|
||||
};
|
||||
},{}]},{},[1]);
|
||||
|
||||
1843
package-lock.json
generated
Normal file
1843
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user