InteractiveConsoleLogger
Class: InteractiveConsoleLogger
Defined in: packages/workout/src/loggers/interactiveconsole.ts:208
Interactive console logger with spinner animations and progress bars Automatically switches to basic ConsoleLogger when not in a TTY
Example
const output = new WorkerOutput();
new InteractiveConsoleLogger(output);
output.startActivity("Processing");
await doWork();
output.stopActivity("success", "Done!");
Extends
Constructors
Constructor
new InteractiveConsoleLogger(
output,level?,format?):InteractiveConsoleLogger
Defined in: packages/workout/src/loggers/interactiveconsole.ts:222
Create a new interactive console logger
Parameters
output
WorkerOutput instance to listen to
level?
WorkerLogLevel = ...
Minimum log level to display (default: LOG_LEVEL env var or "INFO")
format?
string = ConsoleLogger.defaultFormat
sprintf format string for log lines
Returns
InteractiveConsoleLogger
Overrides
Properties
format
format:
string
Defined in: packages/workout/src/loggers/console.ts:44
Active sprintf format string used for output
Inherited from
input
input:
Promise<string> &object
Defined in: packages/workout/src/loggers/interactiveconsole.ts:210
Active inquirer prompt promise (with cancellation support)
Type Declaration
cancel
cancel: () =>
void
Returns
void
logStream
logStream:
WritableStream
Defined in: packages/workout/src/loggers/console.ts:46
Stream receiving the log lines
Inherited from
spinner
spinner:
SimpleProgress
Defined in: packages/workout/src/loggers/interactiveconsole.ts:214
Active spinner/progress indicator
defaultFormat
staticdefaultFormat:string="%(d)s [%(l)s] %(m)s"
Defined in: packages/workout/src/loggers/console.ts:40
Default sprintf format string (date, level, message)
Inherited from
defaultFormatWithLine
staticdefaultFormatWithLine:string="%(d)s [%(l)s] %(m)s (%(f)s:%(ll)d:%(c)d %(ff)s)"
Defined in: packages/workout/src/loggers/console.ts:42
Extended format string that also prints caller file, line, column and function
Inherited from
ConsoleLogger.defaultFormatWithLine
Methods
importInquirer()
protectedimportInquirer():Promise<any>
Defined in: packages/workout/src/loggers/interactiveconsole.ts:302
Import the inquirer module (extracted for testability)
Returns
Promise<any>
the inquirer prompts module
onInput()
onInput(
msg):Promise<void>
Defined in: packages/workout/src/loggers/interactiveconsole.ts:312
Handle input request messages using @inquirer/prompts Creates an interactive prompt with validation
Parameters
msg
Input request message
Returns
Promise<void>
Throws
Error if @inquirer/prompts is not installed
onMessage()
onMessage(
msg):void
Defined in: packages/workout/src/loggers/interactiveconsole.ts:238
Route a WorkerOutput message to the appropriate handler Falls back to the basic ConsoleLogger when not running in an interactive TTY
Parameters
msg
The message to handle
Returns
void
Overrides
onProgress()
onProgress(
msg):Promise<void>
Defined in: packages/workout/src/loggers/interactiveconsole.ts:266
Handle progress-related messages (start, update, stop) Manages spinner animation and displays completion status with duration
Parameters
msg
Progress message to handle
Returns
Promise<void>
display()
staticdisplay(msg,format?,stream?):void
Defined in: packages/workout/src/loggers/console.ts:145
Display a formatted and colored log message
Writes to the stream directly rather than through console, so a patched
console (see patchConsole) cannot loop back into the logger.
Parameters
msg
Message to display
format?
string = ConsoleLogger.defaultFormat
Format string for output
stream?
WritableStream = process.stdout
Stream to write to (default: stdout)
Returns
void
Inherited from
format()
staticformat(msg,format?):string
Defined in: packages/workout/src/loggers/console.ts:160
Format a log message using sprintf-style placeholders Supports: %(d)s (date), %(l)s (level), %(m)s (message), %(f)s (file), %(ll)d (line), %(c)d (column), %(ff)s (function)
Parameters
msg
Message to format
format?
string = ConsoleLogger.defaultFormat
Format string with placeholders
Returns
string
Formatted log string
Inherited from
getColor()
staticgetColor(level): (s) =>string
Defined in: packages/workout/src/loggers/console.ts:82
Get the color function for a given log level
Parameters
level
The log level to get color for
Returns
A function that applies the appropriate color to a string
(s) => string
Inherited from
handleMessage()
statichandleMessage(msg,level,format?,stream?):void
Defined in: packages/workout/src/loggers/console.ts:100
Handle log and title messages with level filtering
Parameters
msg
Message to process
level
Current log level for filtering
format?
string = ConsoleLogger.defaultFormat
Format string for log output
stream?
WritableStream = process.stdout
Stream for log lines (default: stdout)
Returns
void
Inherited from
writeOutput()
staticwriteOutput(msg):void
Defined in: packages/workout/src/loggers/console.ts:132
Write a raw output message, unformatted, to stdout
Parameters
msg
Output message to write
Returns
void