@visulima/ansi
Version:
ANSI escape codes for some terminal swag.
106 lines (101 loc) • 5.31 kB
JavaScript
;
const constants = require('./constants-BK26O-46.cjs');
require('./restoreCursor-DC_ZKZwT.cjs');
const isBrowser = globalThis?.window?.document !== void 0;
const isTerminalApp = !isBrowser && process.env.TERM_PROGRAM === "Apple_Terminal";
const isWindows = !isBrowser && (process.platform === "win32" || /^(?:msys|cygwin)$/.test(process.env.OSTYPE));
var __defProp = Object.defineProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
const SAVE_CURSOR_DEC = `${constants.ESC}7`;
const RESTORE_CURSOR_DEC = `${constants.ESC}8`;
const CURSOR_UP_1 = `${constants.CSI}A`;
const CURSOR_DOWN_1 = `${constants.CSI}B`;
const CURSOR_FORWARD_1 = `${constants.CSI}C`;
const CURSOR_BACKWARD_1 = `${constants.CSI}D`;
const REQUEST_CURSOR_POSITION = `${constants.CSI}6n`;
const REQUEST_EXTENDED_CURSOR_POSITION = `${constants.CSI}?6n`;
const cursorBackward = /* @__PURE__ */ __name((count = 1) => `${constants.CSI + count}D`, "cursorBackward");
const cursorDown = /* @__PURE__ */ __name((count = 1) => `${constants.CSI + count}B`, "cursorDown");
const cursorForward = /* @__PURE__ */ __name((count = 1) => `${constants.CSI + count}C`, "cursorForward");
const cursorHide = `${constants.CSI}?25l`;
const cursorToColumn1 = `${constants.CSI}G`;
const cursorLeft = /* @__PURE__ */ __name((count = 1) => cursorBackward(count), "cursorLeft");
const cursorHorizontalAbsolute = /* @__PURE__ */ __name((column = 1) => `${constants.CSI + column}G`, "cursorHorizontalAbsolute");
const cursorMove = /* @__PURE__ */ __name((x, y) => {
let returnValue = "";
if (x < 0) {
returnValue += `${constants.CSI + -x}D`;
} else if (x > 0) {
returnValue += `${constants.CSI + x}C`;
}
if (y < 0) {
returnValue += `${constants.CSI + -y}A`;
} else if (y > 0) {
returnValue += `${constants.CSI + y}B`;
}
return returnValue;
}, "cursorMove");
const cursorNextLine = /* @__PURE__ */ __name((count = 1) => `${constants.CSI + count}E`, "cursorNextLine");
const cursorPreviousLine = /* @__PURE__ */ __name((count = 1) => `${constants.CSI + count}F`, "cursorPreviousLine");
const cursorRestore = isTerminalApp ? RESTORE_CURSOR_DEC : `${constants.ESC}u`;
const cursorSave = isTerminalApp ? SAVE_CURSOR_DEC : `${constants.ESC}s`;
const cursorShow = `${constants.CSI}?25h`;
const cursorTo = /* @__PURE__ */ __name((x, y) => {
if (y === void 0) {
return cursorHorizontalAbsolute(x + 1);
}
return `${constants.CSI + (y + 1) + constants.SEP + (x + 1)}H`;
}, "cursorTo");
const cursorPosition = /* @__PURE__ */ __name((row, column) => {
if (column === void 0) {
return `${constants.CSI + row}H`;
}
return `${constants.CSI + row + constants.SEP + column}H`;
}, "cursorPosition");
const cursorHorizontalForwardTab = /* @__PURE__ */ __name((count = 1) => `${constants.CSI + count}I`, "cursorHorizontalForwardTab");
const cursorBackwardTab = /* @__PURE__ */ __name((count = 1) => `${constants.CSI + count}Z`, "cursorBackwardTab");
const eraseCharacter = /* @__PURE__ */ __name((count = 1) => `${constants.CSI + count}X`, "eraseCharacter");
const cursorVerticalAbsolute = /* @__PURE__ */ __name((row = 1) => `${constants.CSI + row}d`, "cursorVerticalAbsolute");
const cursorUp = /* @__PURE__ */ __name((count = 1) => `${constants.CSI + count}A`, "cursorUp");
var CursorStyle = /* @__PURE__ */ ((CursorStyle2) => {
CursorStyle2[CursorStyle2["BlinkingBar"] = 5] = "BlinkingBar";
CursorStyle2[CursorStyle2["BlinkingBlock"] = 1] = "BlinkingBlock";
CursorStyle2[CursorStyle2["BlinkingUnderline"] = 3] = "BlinkingUnderline";
CursorStyle2[CursorStyle2["Default"] = 0] = "Default";
CursorStyle2[CursorStyle2["SteadyBar"] = 6] = "SteadyBar";
CursorStyle2[CursorStyle2["SteadyBlock"] = 2] = "SteadyBlock";
CursorStyle2[CursorStyle2["SteadyUnderline"] = 4] = "SteadyUnderline";
return CursorStyle2;
})(CursorStyle || {});
const setCursorStyle = /* @__PURE__ */ __name((style) => `${constants.CSI + style} q`, "setCursorStyle");
exports.CURSOR_BACKWARD_1 = CURSOR_BACKWARD_1;
exports.CURSOR_DOWN_1 = CURSOR_DOWN_1;
exports.CURSOR_FORWARD_1 = CURSOR_FORWARD_1;
exports.CURSOR_UP_1 = CURSOR_UP_1;
exports.CursorStyle = CursorStyle;
exports.REQUEST_CURSOR_POSITION = REQUEST_CURSOR_POSITION;
exports.REQUEST_EXTENDED_CURSOR_POSITION = REQUEST_EXTENDED_CURSOR_POSITION;
exports.RESTORE_CURSOR_DEC = RESTORE_CURSOR_DEC;
exports.SAVE_CURSOR_DEC = SAVE_CURSOR_DEC;
exports.cursorBackward = cursorBackward;
exports.cursorBackwardTab = cursorBackwardTab;
exports.cursorDown = cursorDown;
exports.cursorForward = cursorForward;
exports.cursorHide = cursorHide;
exports.cursorHorizontalAbsolute = cursorHorizontalAbsolute;
exports.cursorHorizontalForwardTab = cursorHorizontalForwardTab;
exports.cursorLeft = cursorLeft;
exports.cursorMove = cursorMove;
exports.cursorNextLine = cursorNextLine;
exports.cursorPosition = cursorPosition;
exports.cursorPreviousLine = cursorPreviousLine;
exports.cursorRestore = cursorRestore;
exports.cursorSave = cursorSave;
exports.cursorShow = cursorShow;
exports.cursorTo = cursorTo;
exports.cursorToColumn1 = cursorToColumn1;
exports.cursorUp = cursorUp;
exports.cursorVerticalAbsolute = cursorVerticalAbsolute;
exports.eraseCharacter = eraseCharacter;
exports.isWindows = isWindows;
exports.setCursorStyle = setCursorStyle;