long-git-cli
Version:
A CLI tool for Git tag management.
33 lines • 921 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.startLoading = startLoading;
exports.withLoading = withLoading;
const ora_1 = __importDefault(require("ora"));
/**
* 启动一个 loading 动画
*/
function startLoading(text) {
return (0, ora_1.default)(text).start();
}
/**
* 包裹异步函数,自动处理 loading 生命周期
* @param fn 需要执行的异步函数
* @param message loading 文案
*/
async function withLoading(fn, message) {
const spinner = (0, ora_1.default)(message).start();
try {
const result = await fn();
spinner.succeed();
return result;
}
catch (error) {
spinner.fail();
throw error;
}
}
exports.default = {};
//# sourceMappingURL=loading.js.map