@visulima/ansi
Version:
ANSI escape codes for some terminal swag.
236 lines (233 loc) • 12.6 kB
JavaScript
import { C as CSI } from './packem_shared/constants-CE7WkXh_.mjs';
var __defProp = Object.defineProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
class AnsiModeImpl {
static {
__name(this, "AnsiModeImpl");
}
/** The numeric code of the ANSI mode. */
code;
/** For ANSI modes, this is always `false`. */
isDecMode = false;
/**
* Creates an instance of an ANSI mode.
* @param code The numeric code for the ANSI mode.
*/
constructor(code) {
this.code = code;
}
}
class DecModeImpl {
static {
__name(this, "DecModeImpl");
}
/** The numeric code of the DEC private mode. */
code;
/** For DEC private modes, this is always `true`. */
isDecMode = true;
/**
* Creates an instance of a DEC private mode.
* @param code The numeric code for the DEC mode.
*/
constructor(code) {
this.code = code;
}
}
const generateModeSequence = /* @__PURE__ */ __name((reset, ...modes) => {
if (modes.length === 0) {
return "";
}
const command = reset ? "l" : "h";
if (modes.length === 1) {
const mode = modes[0];
let seq = CSI;
if (mode.isDecMode) {
seq += "?";
}
return seq + mode.code + command;
}
const ansiModes = modes.filter((m) => !m.isDecMode).map((m) => m.code);
const decModes = modes.filter((m) => m.isDecMode).map((m) => m.code);
let s = "";
if (ansiModes.length > 0) {
s += `${CSI}${ansiModes.join(";")}${command}`;
}
if (decModes.length > 0) {
s += `${CSI}?${decModes.join(";")}${command}`;
}
return s;
}, "generateModeSequence");
var ModeSetting = /* @__PURE__ */ ((ModeSetting2) => {
ModeSetting2[ModeSetting2["NotRecognized"] = 0] = "NotRecognized";
ModeSetting2[ModeSetting2["PermanentlyReset"] = 4] = "PermanentlyReset";
ModeSetting2[ModeSetting2["PermanentlySet"] = 3] = "PermanentlySet";
ModeSetting2[ModeSetting2["Reset"] = 2] = "Reset";
ModeSetting2[ModeSetting2["Set"] = 1] = "Set";
return ModeSetting2;
})(ModeSetting || {});
const isModeNotRecognized = /* @__PURE__ */ __name((m) => m === 0 /* NotRecognized */, "isModeNotRecognized");
const isModeSet = /* @__PURE__ */ __name((m) => m === 1 /* Set */ || m === 3 /* PermanentlySet */, "isModeSet");
const isModeReset = /* @__PURE__ */ __name((m) => m === 2 /* Reset */ || m === 4 /* PermanentlyReset */, "isModeReset");
const isModePermanentlySet = /* @__PURE__ */ __name((m) => m === 3 /* PermanentlySet */, "isModePermanentlySet");
const isModePermanentlyReset = /* @__PURE__ */ __name((m) => m === 4 /* PermanentlyReset */, "isModePermanentlyReset");
const createAnsiMode = /* @__PURE__ */ __name((code) => new AnsiModeImpl(code), "createAnsiMode");
const createDecMode = /* @__PURE__ */ __name((code) => new DecModeImpl(code), "createDecMode");
const setMode = /* @__PURE__ */ __name((...modes) => generateModeSequence(false, ...modes), "setMode");
const SM = setMode;
const resetMode = /* @__PURE__ */ __name((...modes) => generateModeSequence(true, ...modes), "resetMode");
const RM = resetMode;
const requestMode = /* @__PURE__ */ __name((mode) => {
let seq = CSI;
if (mode.isDecMode) {
seq += "?";
}
return `${seq + mode.code}$p`;
}, "requestMode");
const DECRQM = requestMode;
const reportMode = /* @__PURE__ */ __name((mode, value) => {
let effectiveValue = value;
if (value < 0 /* NotRecognized */ || value > 4 /* PermanentlyReset */) {
effectiveValue = 0 /* NotRecognized */;
}
let seq = CSI;
if (mode.isDecMode) {
seq += "?";
}
return `${seq}${mode.code};${effectiveValue}$y`;
}, "reportMode");
const DECRPM = reportMode;
const KeyboardActionMode = createAnsiMode(2);
const KAM = KeyboardActionMode;
const SetKeyboardActionMode = `${CSI}2h`;
const ResetKeyboardActionMode = `${CSI}2l`;
const RequestKeyboardActionMode = `${CSI}2$p`;
const InsertReplaceMode = createAnsiMode(4);
const IRM = InsertReplaceMode;
const SetInsertReplaceMode = `${CSI}4h`;
const ResetInsertReplaceMode = `${CSI}4l`;
const RequestInsertReplaceMode = `${CSI}4$p`;
const BiDirectionalSupportMode = createAnsiMode(8);
const BDSM = BiDirectionalSupportMode;
const SetBiDirectionalSupportMode = `${CSI}8h`;
const ResetBiDirectionalSupportMode = `${CSI}8l`;
const RequestBiDirectionalSupportMode = `${CSI}8$p`;
const SendReceiveMode = createAnsiMode(12);
const LocalEchoMode = SendReceiveMode;
const SRM = SendReceiveMode;
const SetSendReceiveMode = `${CSI}12h`;
const ResetSendReceiveMode = `${CSI}12l`;
const RequestSendReceiveMode = `${CSI}12$p`;
const SetLocalEchoMode = SetSendReceiveMode;
const ResetLocalEchoMode = ResetSendReceiveMode;
const RequestLocalEchoMode = RequestSendReceiveMode;
const LineFeedNewLineMode = createAnsiMode(20);
const LNM = LineFeedNewLineMode;
const SetLineFeedNewLineMode = `${CSI}20h`;
const ResetLineFeedNewLineMode = `${CSI}20l`;
const RequestLineFeedNewLineMode = `${CSI}20$p`;
const CursorKeysMode = createDecMode(1);
const DECCKM = CursorKeysMode;
const SetCursorKeysMode = `${CSI}?1h`;
const ResetCursorKeysMode = `${CSI}?1l`;
const RequestCursorKeysMode = `${CSI}?1$p`;
const OriginMode = createDecMode(6);
const DECOM = OriginMode;
const SetOriginMode = `${CSI}?6h`;
const ResetOriginMode = `${CSI}?6l`;
const RequestOriginMode = `${CSI}?6$p`;
const AutoWrapMode = createDecMode(7);
const DECAWM = AutoWrapMode;
const SetAutoWrapMode = `${CSI}?7h`;
const ResetAutoWrapMode = `${CSI}?7l`;
const RequestAutoWrapMode = `${CSI}?7$p`;
const X10MouseMode = createDecMode(9);
const SetX10MouseMode = `${CSI}?9h`;
const ResetX10MouseMode = `${CSI}?9l`;
const RequestX10MouseMode = `${CSI}?9$p`;
const TextCursorEnableMode = createDecMode(25);
const DECTCEM = TextCursorEnableMode;
const SetTextCursorEnableMode = `${CSI}?25h`;
const ResetTextCursorEnableMode = `${CSI}?25l`;
const RequestTextCursorEnableMode = `${CSI}?25$p`;
const ShowCursor = SetTextCursorEnableMode;
const HideCursor = ResetTextCursorEnableMode;
const NumericKeypadMode = createDecMode(66);
const DECNKM = NumericKeypadMode;
const SetNumericKeypadMode = `${CSI}?66h`;
const ResetNumericKeypadMode = `${CSI}?66l`;
const RequestNumericKeypadMode = `${CSI}?66$p`;
const BackarrowKeyMode = createDecMode(67);
const DECBKM = BackarrowKeyMode;
const SetBackarrowKeyMode = `${CSI}?67h`;
const ResetBackarrowKeyMode = `${CSI}?67l`;
const RequestBackarrowKeyMode = `${CSI}?67$p`;
const LeftRightMarginMode = createDecMode(69);
const DECLRMM = LeftRightMarginMode;
const SetLeftRightMarginMode = `${CSI}?69h`;
const ResetLeftRightMarginMode = `${CSI}?69l`;
const RequestLeftRightMarginMode = `${CSI}?69$p`;
const NormalMouseMode = createDecMode(1e3);
const SetNormalMouseMode = `${CSI}?1000h`;
const ResetNormalMouseMode = `${CSI}?1000l`;
const RequestNormalMouseMode = `${CSI}?1000$p`;
const HighlightMouseMode = createDecMode(1001);
const SetHighlightMouseMode = `${CSI}?1001h`;
const ResetHighlightMouseMode = `${CSI}?1001l`;
const RequestHighlightMouseMode = `${CSI}?1001$p`;
const ButtonEventMouseMode = createDecMode(1002);
const SetButtonEventMouseMode = `${CSI}?1002h`;
const ResetButtonEventMouseMode = `${CSI}?1002l`;
const RequestButtonEventMouseMode = `${CSI}?1002$p`;
const AnyEventMouseMode = createDecMode(1003);
const SetAnyEventMouseMode = `${CSI}?1003h`;
const ResetAnyEventMouseMode = `${CSI}?1003l`;
const RequestAnyEventMouseMode = `${CSI}?1003$p`;
const FocusEventMode = createDecMode(1004);
const SetFocusEventMode = `${CSI}?1004h`;
const ResetFocusEventMode = `${CSI}?1004l`;
const RequestFocusEventMode = `${CSI}?1004$p`;
const Utf8ExtMouseMode = createDecMode(1005);
const SetUtf8ExtMouseMode = `${CSI}?1005h`;
const ResetUtf8ExtMouseMode = `${CSI}?1005l`;
const RequestUtf8ExtMouseMode = `${CSI}?1005$p`;
const SgrExtMouseMode = createDecMode(1006);
const SetSgrExtMouseMode = `${CSI}?1006h`;
const ResetSgrExtMouseMode = `${CSI}?1006l`;
const RequestSgrExtMouseMode = `${CSI}?1006$p`;
const UrxvtExtMouseMode = createDecMode(1015);
const SetUrxvtExtMouseMode = `${CSI}?1015h`;
const ResetUrxvtExtMouseMode = `${CSI}?1015l`;
const RequestUrxvtExtMouseMode = `${CSI}?1015$p`;
const SgrPixelExtMouseMode = createDecMode(1016);
const SetSgrPixelExtMouseMode = `${CSI}?1016h`;
const ResetSgrPixelExtMouseMode = `${CSI}?1016l`;
const RequestSgrPixelExtMouseMode = `${CSI}?1016$p`;
const AltScreenMode = createDecMode(1047);
const SetAltScreenMode = `${CSI}?1047h`;
const ResetAltScreenMode = `${CSI}?1047l`;
const RequestAltScreenMode = `${CSI}?1047$p`;
const SaveCursorMode = createDecMode(1048);
const SetSaveCursorMode = `${CSI}?1048h`;
const ResetSaveCursorMode = `${CSI}?1048l`;
const RequestSaveCursorMode = `${CSI}?1048$p`;
const AltScreenSaveCursorMode = createDecMode(1049);
const SetAltScreenSaveCursorMode = `${CSI}?1049h`;
const ResetAltScreenSaveCursorMode = `${CSI}?1049l`;
const RequestAltScreenSaveCursorMode = `${CSI}?1049$p`;
const BracketedPasteMode = createDecMode(2004);
const SetBracketedPasteMode = `${CSI}?2004h`;
const ResetBracketedPasteMode = `${CSI}?2004l`;
const RequestBracketedPasteMode = `${CSI}?2004$p`;
const SynchronizedOutputMode = createDecMode(2026);
const SetSynchronizedOutputMode = `${CSI}?2026h`;
const ResetSynchronizedOutputMode = `${CSI}?2026l`;
const RequestSynchronizedOutputMode = `${CSI}?2026$p`;
const GraphemeClusteringMode = createDecMode(2027);
const SetGraphemeClusteringMode = `${CSI}?2027h`;
const ResetGraphemeClusteringMode = `${CSI}?2027l`;
const RequestGraphemeClusteringMode = `${CSI}?2027$p`;
const Win32InputMode = createDecMode(9001);
const SetWin32InputMode = `${CSI}?9001h`;
const ResetWin32InputMode = `${CSI}?9001l`;
const RequestWin32InputMode = `${CSI}?9001$p`;
export { AltScreenMode, AltScreenSaveCursorMode, AnyEventMouseMode, AutoWrapMode, BDSM, BackarrowKeyMode, BiDirectionalSupportMode, BracketedPasteMode, ButtonEventMouseMode, CursorKeysMode, DECAWM, DECBKM, DECCKM, DECLRMM, DECNKM, DECOM, DECRPM, DECRQM, DECTCEM, FocusEventMode, GraphemeClusteringMode, HideCursor, HighlightMouseMode, IRM, InsertReplaceMode, KAM, KeyboardActionMode, LNM, LeftRightMarginMode, LineFeedNewLineMode, LocalEchoMode, ModeSetting, NormalMouseMode, NumericKeypadMode, OriginMode, RM, RequestAltScreenMode, RequestAltScreenSaveCursorMode, RequestAnyEventMouseMode, RequestAutoWrapMode, RequestBackarrowKeyMode, RequestBiDirectionalSupportMode, RequestBracketedPasteMode, RequestButtonEventMouseMode, RequestCursorKeysMode, RequestFocusEventMode, RequestGraphemeClusteringMode, RequestHighlightMouseMode, RequestInsertReplaceMode, RequestKeyboardActionMode, RequestLeftRightMarginMode, RequestLineFeedNewLineMode, RequestLocalEchoMode, RequestNormalMouseMode, RequestNumericKeypadMode, RequestOriginMode, RequestSaveCursorMode, RequestSendReceiveMode, RequestSgrExtMouseMode, RequestSgrPixelExtMouseMode, RequestSynchronizedOutputMode, RequestTextCursorEnableMode, RequestUrxvtExtMouseMode, RequestUtf8ExtMouseMode, RequestWin32InputMode, RequestX10MouseMode, ResetAltScreenMode, ResetAltScreenSaveCursorMode, ResetAnyEventMouseMode, ResetAutoWrapMode, ResetBackarrowKeyMode, ResetBiDirectionalSupportMode, ResetBracketedPasteMode, ResetButtonEventMouseMode, ResetCursorKeysMode, ResetFocusEventMode, ResetGraphemeClusteringMode, ResetHighlightMouseMode, ResetInsertReplaceMode, ResetKeyboardActionMode, ResetLeftRightMarginMode, ResetLineFeedNewLineMode, ResetLocalEchoMode, ResetNormalMouseMode, ResetNumericKeypadMode, ResetOriginMode, ResetSaveCursorMode, ResetSendReceiveMode, ResetSgrExtMouseMode, ResetSgrPixelExtMouseMode, ResetSynchronizedOutputMode, ResetTextCursorEnableMode, ResetUrxvtExtMouseMode, ResetUtf8ExtMouseMode, ResetWin32InputMode, ResetX10MouseMode, SM, SRM, SaveCursorMode, SendReceiveMode, SetAltScreenMode, SetAltScreenSaveCursorMode, SetAnyEventMouseMode, SetAutoWrapMode, SetBackarrowKeyMode, SetBiDirectionalSupportMode, SetBracketedPasteMode, SetButtonEventMouseMode, SetCursorKeysMode, SetFocusEventMode, SetGraphemeClusteringMode, SetHighlightMouseMode, SetInsertReplaceMode, SetKeyboardActionMode, SetLeftRightMarginMode, SetLineFeedNewLineMode, SetLocalEchoMode, SetNormalMouseMode, SetNumericKeypadMode, SetOriginMode, SetSaveCursorMode, SetSendReceiveMode, SetSgrExtMouseMode, SetSgrPixelExtMouseMode, SetSynchronizedOutputMode, SetTextCursorEnableMode, SetUrxvtExtMouseMode, SetUtf8ExtMouseMode, SetWin32InputMode, SetX10MouseMode, SgrExtMouseMode, SgrPixelExtMouseMode, ShowCursor, SynchronizedOutputMode, TextCursorEnableMode, UrxvtExtMouseMode, Utf8ExtMouseMode, Win32InputMode, X10MouseMode, createAnsiMode, createDecMode, isModeNotRecognized, isModePermanentlyReset, isModePermanentlySet, isModeReset, isModeSet, reportMode, requestMode, resetMode, setMode };