20 lines
599 B
JavaScript
20 lines
599 B
JavaScript
'use strict';
|
|
|
|
function posix(path) {
|
|
return path.charAt(0) === '/';
|
|
};
|
|
|
|
function win32(path) {
|
|
// https://github.com/joyent/node/blob/b3fcc245fb25539909ef1d5eaa01dbf92e168633/lib/path.js#L56
|
|
var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/;
|
|
var result = splitDeviceRe.exec(path);
|
|
var device = result[1] || '';
|
|
var isUnc = !!device && device.charAt(1) !== ':';
|
|
|
|
// UNC paths are always absolute
|
|
return !!result[2] || isUnc;
|
|
};
|
|
|
|
module.exports = process.platform === 'win32' ? win32 : posix;
|
|
module.exports.posix = posix;
|
|
module.exports.win32 = win32;
|