UNPKG

appcenter-cli

Version:

Command line tool for Visual Studio App Center

51 lines (50 loc) 1.49 kB
"use strict"; // Helper functions for file system Object.defineProperty(exports, "__esModule", { value: true }); exports.generateAbsolutePath = exports.createLongPath = exports.directoryExistsSync = exports.fileExistsSync = void 0; 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;