'use strict'; const restoreCursor = require('restore-cursor'); let isHidden = false; exports.show = (writableStream = process.stderr) => { if (!writableStream.isTTY) { return; } isHidden = false; writableStream.write('\u001B[?25h'); }; exports.hide = (writableStream = process.stderr) => { if (!writableStream.isTTY) { return; } restoreCursor(); isHidden = true; writableStream.write('\u001B[?25l'); }; exports.toggle = (force, writableStream) => { if (force !== undefined) { isHidden = force; } if (isHidden) { exports.show(writableStream); } else { exports.hide(writableStream); } };