Sha256: 93abafb7a89f0fe00c662cd8f4100f4aeef7d5b0a068b8a9af81b38f03d21325

Contents?: true

Size: 730 Bytes

Versions: 93

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

93 entries across 39 versions & 6 rubygems

Version Path
ruby2js-4.0.4 lib/tasks/testrails/node_modules/tar/node_modules/mkdirp/lib/path-arg.js
ruby2js-4.0.3 lib/tasks/testrails/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js
ruby2js-4.0.3 lib/tasks/testrails/node_modules/tar/node_modules/mkdirp/lib/path-arg.js
ruby2js-4.0.3 lib/tasks/testrails/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js
tang-0.2.0 spec/tang_app/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js
tang-0.2.0 spec/tang_app/node_modules/tar/node_modules/mkdirp/lib/path-arg.js
tang-0.2.0 spec/tang_app/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js
tang-0.1.0 spec/tang_app/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js
tang-0.1.0 spec/tang_app/node_modules/tar/node_modules/mkdirp/lib/path-arg.js
tang-0.1.0 spec/tang_app/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js
tang-0.0.9 spec/tang_app/node_modules/tar/node_modules/mkdirp/lib/path-arg.js
tang-0.0.9 spec/tang_app/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js
tang-0.0.9 spec/tang_app/node_modules/cacache/node_modules/mkdirp/lib/path-arg.js