28 lines
545 B
JavaScript
28 lines
545 B
JavaScript
|
'use strict'
|
||
|
const fs = require('../fs')
|
||
|
const { checkPath } = require('./utils')
|
||
|
|
||
|
const getMode = options => {
|
||
|
const defaults = { mode: 0o777 }
|
||
|
if (typeof options === 'number') return options
|
||
|
return ({ ...defaults, ...options }).mode
|
||
|
}
|
||
|
|
||
|
module.exports.makeDir = async (dir, options) => {
|
||
|
checkPath(dir)
|
||
|
|
||
|
return fs.mkdir(dir, {
|
||
|
mode: getMode(options),
|
||
|
recursive: true
|
||
|
})
|
||
|
}
|
||
|
|
||
|
module.exports.makeDirSync = (dir, options) => {
|
||
|
checkPath(dir)
|
||
|
|
||
|
return fs.mkdirSync(dir, {
|
||
|
mode: getMode(options),
|
||
|
recursive: true
|
||
|
})
|
||
|
}
|