smartfacecloud-emulator-file
Advanced tools
Comparing version
@@ -98,2 +98,3 @@ const archiver = require('archiver'); | ||
var newFileName = findSafeFileNameToSave(dir, fileName); | ||
mkdirpSync(path.join(dir, newFileName)); | ||
fs.writeFileSync(path.join(dir, newFileName), fs.readFileSync(filePath)); | ||
@@ -134,2 +135,30 @@ return newFileName; | ||
function mkdirpSync(pathStr){ | ||
var unvalidDirname = []; | ||
// first occurence valid directory. | ||
function getValidDirname(pathString) { | ||
const dirname = path.dirname(pathString); | ||
if ((dirname === '.') || fs.existsSync(dirname)) { | ||
unvalidDirname.push(pathString.substring(pathString.lastIndexOf(path.sep)).replace(/\\|\//gm, '')); | ||
return dirname; | ||
} | ||
unvalidDirname.push(pathString.substring(pathString.lastIndexOf(path.sep)).replace(/\\|\//gm, '')); | ||
return getValidDirname(path.dirname(pathString)); | ||
} | ||
var res = false; | ||
normalPath = path.normalize(pathStr); | ||
validDirname = getValidDirname(normalPath); | ||
if (validDirname !== '.') { | ||
_.each(unvalidDirname.reverse(), function(item) { | ||
validDirname = validDirname + path.sep + item; | ||
if (!fs.existsSync(validDirname)) { | ||
fs.mkdirSync(validDirname); | ||
} | ||
}); | ||
res = true; | ||
} | ||
return res; | ||
}; | ||
module.exports = FilePackager; |
{ | ||
"name": "smartfacecloud-emulator-file", | ||
"version": "0.0.7", | ||
"version": "0.0.8", | ||
"description": "", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
26487
3.55%763
3.67%