21 lines
		
	
	
		
			611 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			21 lines
		
	
	
		
			611 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | 'use strict'; | ||
|  | 
 | ||
|  | function posix(path) { | ||
|  | 	return path.charAt(0) === '/'; | ||
|  | } | ||
|  | 
 | ||
|  | function win32(path) { | ||
|  | 	// https://github.com/nodejs/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 = Boolean(device && device.charAt(1) !== ':'); | ||
|  | 
 | ||
|  | 	// UNC paths are always absolute
 | ||
|  | 	return Boolean(result[2] || isUnc); | ||
|  | } | ||
|  | 
 | ||
|  | module.exports = process.platform === 'win32' ? win32 : posix; | ||
|  | module.exports.posix = posix; | ||
|  | module.exports.win32 = win32; |