25 lines
517 B
JavaScript
25 lines
517 B
JavaScript
'use strict'
|
|
|
|
const path = require('path')
|
|
|
|
// get drive on windows
|
|
function getRootPath (p) {
|
|
p = path.normalize(path.resolve(p)).split(path.sep)
|
|
if (p.length > 0) return p[0]
|
|
return null
|
|
}
|
|
|
|
// http://stackoverflow.com/a/62888/10333 contains more accurate
|
|
// TODO: expand to include the rest
|
|
const INVALID_PATH_CHARS = /[<>:"|?*]/
|
|
|
|
function invalidWin32Path (p) {
|
|
const rp = getRootPath(p)
|
|
p = p.replace(rp, '')
|
|
return INVALID_PATH_CHARS.test(p)
|
|
}
|
|
|
|
module.exports = {
|
|
getRootPath,
|
|
invalidWin32Path
|
|
}
|