basant307/AI_Governance_Project
048
1import process from 'node:process';2import restoreCursor from 'restore-cursor';3 4let isHidden = false;5 6const cliCursor = {};7 8cliCursor.show = (writableStream = process.stderr) => {9 if (!writableStream.isTTY) {10 return;11 }12 13 isHidden = false;14 writableStream.write('\u001B[?25h');15};16 17cliCursor.hide = (writableStream = process.stderr) => {18 if (!writableStream.isTTY) {19 return;20 }21 22 restoreCursor();23 isHidden = true;24 writableStream.write('\u001B[?25l');25};26 27cliCursor.toggle = (force, writableStream) => {28 if (force !== undefined) {29 isHidden = force;30 }31 32 if (isHidden) {33 cliCursor.show(writableStream);34 } else {35 cliCursor.hide(writableStream);36 }37};38 39export default cliCursor;40 