login/node_modules/mkdirp/lib/opts-arg.js
Rakesh Kumar 807bb60301
Update build files and add node_modules (#54)
* update build files

* add node_modules
2020-09-23 12:15:33 +05:30

23 lines
826 B
JavaScript

const { promisify } = require('util')
const fs = require('fs')
const optsArg = opts => {
if (!opts)
opts = { mode: 0o777 & (~process.umask()), fs }
else if (typeof opts === 'object')
opts = { mode: 0o777 & (~process.umask()), fs, ...opts }
else if (typeof opts === 'number')
opts = { mode: opts, fs }
else if (typeof opts === 'string')
opts = { mode: parseInt(opts, 8), fs }
else
throw new TypeError('invalid options argument')
opts.mkdir = opts.mkdir || opts.fs.mkdir || fs.mkdir
opts.mkdirAsync = promisify(opts.mkdir)
opts.stat = opts.stat || opts.fs.stat || fs.stat
opts.statAsync = promisify(opts.stat)
opts.statSync = opts.statSync || opts.fs.statSync || fs.statSync
opts.mkdirSync = opts.mkdirSync || opts.fs.mkdirSync || fs.mkdirSync
return opts
}
module.exports = optsArg