Sha256: 93abafb7a89f0fe00c662cd8f4100f4aeef7d5b0a068b8a9af81b38f03d21325

Contents?: true

Size: 730 Bytes

Versions: 96

Compression:

Stored size: 730 Bytes

Contents

const platform = process.env.__TESTING_MKDIRP_PLATFORM__ || process.platform
const { resolve, parse } = require('path')
const pathArg = path => {
  if (/\0/.test(path)) {
    // simulate same failure that node raises
    throw Object.assign(
      new TypeError('path must be a string without null bytes'),
      {
        path,
        code: 'ERR_INVALID_ARG_VALUE',
      }
    )
  }

  path = resolve(path)
  if (platform === 'win32') {
    const badWinChars = /[*|"<>?:]/
    const {root} = parse(path)
    if (badWinChars.test(path.substr(root.length))) {
      throw Object.assign(new Error('Illegal characters in path.'), {
        path,
        code: 'EINVAL',
      })
    }
  }

  return path
}
module.exports = pathArg

Version data entries

96 entries across 40 versions & 6 rubygems

Version Path
immosquare-cleaner-0.1.46 node_modules/node-gyp/node_modules/make-fetch-happen/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.45 node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.45 node_modules/node-gyp/node_modules/make-fetch-happen/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.45 node_modules/tar/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.44 node_modules/node-gyp/node_modules/make-fetch-happen/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.44 node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.44 node_modules/tar/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.43 node_modules/tar/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.43 node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.43 node_modules/node-gyp/node_modules/make-fetch-happen/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.42 node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.42 node_modules/node-gyp/node_modules/make-fetch-happen/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.42 node_modules/tar/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.41 node_modules/tar/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.41 node_modules/node-gyp/node_modules/make-fetch-happen/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.41 node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.40 node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.40 node_modules/tar/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.40 node_modules/node-gyp/node_modules/make-fetch-happen/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js
immosquare-cleaner-0.1.39 node_modules/mkdirp/lib/path-arg.js