appcenter-cli
Version:
Command line tool for Visual Studio App Center
50 lines (49 loc) • 1.37 kB
JavaScript
;
// Helper functions for file system
Object.defineProperty(exports, "__esModule", { value: true });
const fs = require("fs");
const path = require("path");
function fileExistsSync(filename) {
try {
return fs.statSync(filename).isFile();
}
catch (err) {
if (err.code !== "ENOENT") {
throw err;
}
}
return false;
}
exports.fileExistsSync = fileExistsSync;
function directoryExistsSync(dirname) {
try {
return fs.statSync(dirname).isDirectory();
}
catch (err) {
if (err.code !== "ENOENT") {
throw err;
}
}
return false;
}
exports.directoryExistsSync = directoryExistsSync;
function createLongPath(target) {
let targetFolder = target;
const notExistsFolder = [];
while (!fs.existsSync(targetFolder)) {
notExistsFolder.push(path.basename(targetFolder));
targetFolder = path.resolve(targetFolder, "..");
}
notExistsFolder.reverse().forEach((element) => {
targetFolder = path.resolve(targetFolder, element);
fs.mkdirSync(targetFolder);
});
}
exports.createLongPath = createLongPath;
function generateAbsolutePath(somePath) {
if (path.isAbsolute(somePath)) {
return somePath;
}
return path.join(process.cwd(), somePath);
}
exports.generateAbsolutePath = generateAbsolutePath;