index.js (611B)
1 'use strict'; 2 3 function posix(path) { 4 return path.charAt(0) === '/'; 5 } 6 7 function win32(path) { 8 // https://github.com/nodejs/node/blob/b3fcc245fb25539909ef1d5eaa01dbf92e168633/lib/path.js#L56 9 var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; 10 var result = splitDeviceRe.exec(path); 11 var device = result[1] || ''; 12 var isUnc = Boolean(device && device.charAt(1) !== ':'); 13 14 // UNC paths are always absolute 15 return Boolean(result[2] || isUnc); 16 } 17 18 module.exports = process.platform === 'win32' ? win32 : posix; 19 module.exports.posix = posix; 20 module.exports.win32 = win32;