UNPKG

@lark-project/cli

Version:

飞书项目插件开发工具

34 lines (33 loc) 1 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.withLoadingSpinner = void 0; const ora_1 = __importDefault(require("ora")); /** * 为一个操作添加加载动画 * @param fn * @param message * @param args * @returns */ const withLoadingSpinner = async (fn, message, ...args) => { /** 使用 ora 初始化,传入提示信息 message */ const spinner = (0, ora_1.default)(`${message}\n`); /** 开始加载动画 */ spinner.start(); try { /** 执行传入方法 fn */ const result = await fn(...args); /** 状态为修改为成功 */ spinner.succeed(); return result; } catch (e) { /** 状态为修改为失败, 抛出错误 */ spinner.fail(`${message} failed`); throw e; } }; exports.withLoadingSpinner = withLoadingSpinner;