@amplitude/ampli
Version:
Amplitude CLI
54 lines (53 loc) • 1.42 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.rimraf = exports.tmpDir = exports.mkdir = exports.unlink = exports.writeFile = exports.readTextFile = exports.exists = void 0;
const fs = require("fs");
const rimraf_ = require("rimraf");
const tmp = require("tmp");
async function exists(path) {
try {
await fs.promises.stat(path);
return true;
}
catch (e) {
if (e.code === 'ENOENT') {
return false;
}
throw e;
}
}
exports.exists = exists;
async function readTextFile(path) {
return fs.promises.readFile(path, 'utf8');
}
exports.readTextFile = readTextFile;
async function writeFile(path, data) {
return fs.promises.writeFile(path, data);
}
exports.writeFile = writeFile;
async function unlink(path) {
return fs.promises.unlink(path);
}
exports.unlink = unlink;
async function mkdir(path, options) {
return fs.promises.mkdir(path, options);
}
exports.mkdir = mkdir;
async function tmpDir() {
return new Promise((resolve, reject) => tmp.dir((err, name) => {
if (err) {
reject(err);
}
resolve(name);
}));
}
exports.tmpDir = tmpDir;
async function rimraf(path) {
return new Promise((resolve, reject) => rimraf_(path, { disableGlob: true }, err => {
if (err) {
reject(err);
}
resolve();
}));
}
exports.rimraf = rimraf;