/**
 * Minified by jsDelivr using Terser v5.48.0.
 * Original file: /npm/listr2@11.1.0/dist/index.mjs
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
import EventEmitter,{setMaxListeners}from"node:events";import{inspect,styleText}from"node:util";import{format}from"util";import{EOL}from"os";import{StringDecoder}from"string_decoder";import{Writable}from"stream";import{randomUUID}from"crypto";const ANSI_ESCAPE="[",ANSI_ESCAPE_CODES={CURSOR_HIDE:"[?25l",CURSOR_SHOW:"[?25h"};let ListrEnvironmentVariables=function(t){return t.FORCE_UNICODE="LISTR_FORCE_UNICODE",t.FORCE_TTY="LISTR_FORCE_TTY",t.DISABLE_COLOR="NO_COLOR",t.FORCE_COLOR="FORCE_COLOR",t}({}),ListrErrorTypes=function(t){return t.WILL_RETRY="WILL_RETRY",t.WILL_ROLLBACK="WILL_ROLLBACK",t.HAS_FAILED_TO_ROLLBACK="HAS_FAILED_TO_ROLLBACK",t.HAS_FAILED="HAS_FAILED",t.HAS_FAILED_WITHOUT_ERROR="HAS_FAILED_WITHOUT_ERROR",t}({}),ListrEventType=function(t){return t.SHOULD_REFRESH_RENDER="SHOUD_REFRESH_RENDER",t}({}),ListrRendererSelection=function(t){return t.PRIMARY="PRIMARY",t.SECONDARY="SECONDARY",t.SILENT="SILENT",t}({}),ListrTaskEventType=function(t){return t.TITLE="TITLE",t.STATE="STATE",t.ENABLED="ENABLED",t.SUBTASK="SUBTASK",t.PROMPT="PROMPT",t.OUTPUT="OUTPUT",t.OUTPUT_RESET="OUTPUT_RESET",t.MESSAGE="MESSAGE",t.CLOSED="CLOSED",t}({}),ListrTaskState=function(t){return t.WAITING="WAITING",t.STARTED="STARTED",t.COMPLETED="COMPLETED",t.FAILED="FAILED",t.SKIPPED="SKIPPED",t.ROLLING_BACK="ROLLING_BACK",t.ROLLED_BACK="ROLLED_BACK",t.RETRY="RETRY",t.PAUSED="PAUSED",t.PROMPT="PROMPT",t.PROMPT_COMPLETED="PROMPT_COMPLETED",t.PROMPT_FAILED="PROMPT_FAILED",t.CANCELLED="CANCELLED",t}({});var EventManager=class{emitter=new EventEmitter;constructor(){this.emitter.setMaxListeners(0)}emit(t,e){this.emitter.emit(t,e)}on(t,e){e&&this.emitter.addListener(t,e)}once(t,e){e&&this.emitter.once(t,e)}off(t,e){e?this.emitter.off(t,e):this.emitter.removeAllListeners(t)}complete(){this.emitter.removeAllListeners()}},BaseEventMap=class{},ListrError=class extends Error{error;type;task;path;constructor(t,e,s){super(t.message),this.error=t,this.type=e,this.task=s,this.name="ListrError",this.path=s.path,this.stack=t?.stack}},ListrRendererError=class extends Error{},PromptError=class extends Error{};function isObservable(t){return!!t&&"object"==typeof t&&"function"==typeof t.subscribe}function isReadable(t){return!!t&&"object"==typeof t&&!0===t.readable&&"function"==typeof t.read&&"function"==typeof t.on}function isUnicodeSupported(){return!!process.env.LISTR_FORCE_UNICODE||"win32"!==process.platform||!!process.env.CI||!!process.env.WT_SESSION||"vscode"===process.env.TERM_PROGRAM||"xterm-256color"===process.env.TERM||"alacritty"===process.env.TERM}const CLEAR_LINE_REGEX="(?:\\u001b|\\u009b)\\[[\\=><~/#&.:=?%@~_-]*[0-9]*[\\a-ln-tqyz=><~/#&.:=?%@~_-]+";function cleanseAnsi(t){return String(t).replace(new RegExp(CLEAR_LINE_REGEX,"gmi"),"").trim()}const color=Object.fromEntries(Object.keys(inspect.colors).map(t=>[t,e=>styleText(t,String(e))]));function indent(t,e){return t.replace(/^(?!\s*$)/gm," ".repeat(e))}const FIGURES_MAIN={warning:"⚠",info:"ℹ",cross:"✖",arrowDown:"↓",tick:"✔",arrowRight:"→",pointer:"❯",checkboxOn:"☒",arrowLeft:"←",squareSmallFilled:"◼",pointerSmall:"›",circleSlash:"⊘"},FIGURES_FALLBACK={...FIGURES_MAIN,warning:"‼",info:"i",cross:"×",tick:"√",pointer:">",checkboxOn:"[×]",squareSmallFilled:"■",circleSlash:"ø"},figures=isUnicodeSupported()?FIGURES_MAIN:FIGURES_FALLBACK;function splat(t,...e){return format(String(t),...e)}let ListrLogLevels=function(t){return t.STARTED="STARTED",t.COMPLETED="COMPLETED",t.FAILED="FAILED",t.SKIPPED="SKIPPED",t.OUTPUT="OUTPUT",t.TITLE="TITLE",t.ROLLBACK="ROLLBACK",t.RETRY="RETRY",t.PROMPT="PROMPT",t.PAUSED="PAUSED",t.CANCELLED="CANCELLED",t}({});const LISTR_LOGGER_STYLE={icon:{STARTED:figures.pointer,FAILED:figures.cross,SKIPPED:figures.arrowDown,COMPLETED:figures.tick,OUTPUT:figures.pointerSmall,TITLE:figures.arrowRight,RETRY:figures.warning,ROLLBACK:figures.arrowLeft,PAUSED:figures.squareSmallFilled,CANCELLED:figures.circleSlash},color:{STARTED:color.yellow,FAILED:color.red,SKIPPED:color.yellow,COMPLETED:color.green,RETRY:color.yellowBright,ROLLBACK:color.redBright,PAUSED:color.yellowBright,CANCELLED:color.red}},LISTR_LOGGER_STDERR_LEVELS=["RETRY","ROLLBACK","FAILED"];var ListrLogger=class{options;process;constructor(t){this.options=t,this.options={useIcons:!0,toStderr:[],...t??{}},this.options.fields??={},this.options.fields.prefix??=[],this.options.fields.suffix??=[],this.process=this.options.processOutput??new ProcessOutput}log(t,e,s){const r=this.format(t,e,s);this.options.toStderr.includes(t)?this.process.toStderr(r):this.process.toStdout(r)}toStdout(t,e,s=!0){this.process.toStdout(this.format(null,t,e),s)}toStderr(t,e,s=!0){this.process.toStderr(this.format(null,t,e),s)}wrap(t,e){return t?this.applyFormat(`[${t}]`,e):t}splat(...t){const e=t.shift()??"";return 0===t.length?e:splat(e,t)}suffix(t,...e){return e.filter(Boolean).forEach(e=>{if(t+=this.spacing(t),"string"==typeof e)t+=this.wrap(e);else if("object"==typeof e){if(e.args??=[],"function"==typeof e.condition?!e.condition(...e.args):!(e.condition??1))return t;t+=this.wrap("function"==typeof e.field?e.field(...e.args):e.field,{format:e?.format(...e.args)})}}),t}prefix(t,...e){return e.filter(Boolean).forEach(e=>{if(t=this.spacing(t)+t,"string"==typeof e)t=this.wrap(e)+t;else if("object"==typeof e){if(e.args??=[],"function"==typeof e.condition?!e.condition(...e.args):!(e.condition??1))return t;t=this.wrap("function"==typeof e.field?e.field(...e.args):e.field,{format:e?.format()})+t}}),t}fields(t,e){return this.options?.fields?.prefix&&(t=this.prefix(t,...this.options.fields.prefix)),e?.prefix&&(t=this.prefix(t,...e.prefix)),e?.suffix&&(t=this.suffix(t,...e.suffix)),this.options?.fields?.suffix&&(t=this.suffix(t,...this.options.fields.suffix)),t}icon(t,e){if(!t)return null;if(!e){const s=this.options.icon?.[t];e="function"==typeof s?s():s}const s=this.options.color?.[t];return e&&s&&(e=s(e)),e}format(t,e,s){return Array.isArray(e)||(e=[e]),e=this.splat(e.shift(),...e).toString().split(EOL).filter(t=>!t||""!==t.trim()).map(e=>this.style(t,this.fields(e,{prefix:Array.isArray(s?.prefix)?s.prefix:[s?.prefix],suffix:Array.isArray(s?.suffix)?s.suffix:[s?.suffix]}))).join(EOL)}style(t,e){if(!t||!e)return e;const s=this.icon(t,!this.options.useIcons&&this.wrap(t));return s&&(e=s+" "+e),e}applyFormat(t,e){return e?.format?e.format(t):t}spacing(t){return void 0===t||""===t.trim()?"":" "}},ProcessOutputBuffer=class{options;buffer=[];decoder=new StringDecoder;constructor(t){this.options=t}get all(){return this.buffer}get last(){return this.buffer.at(-1)}get length(){return this.buffer.length}write(t,...e){const s=e[e.length-1];return this.buffer.push({time:Date.now(),stream:this.options?.stream,entry:this.decoder.write("string"==typeof t?Buffer.from(t,"string"==typeof e[0]?e[0]:void 0):Buffer.from(t))}),this.options?.limit&&(this.buffer=this.buffer.slice(-this.options.limit)),"function"==typeof s&&s(),!0}reset(){this.buffer=[]}},ProcessOutputStream=class{stream;method;buffer;constructor(t){this.stream=t,this.method=t.write,this.buffer=new ProcessOutputBuffer({stream:t})}get out(){const t=this;return new Proxy(this.stream,{get:(e,s,r)=>"write"===s?t.write.bind(t):Reflect.get(e,s,r)})}hijack(){this.stream.write=this.buffer.write.bind(this.buffer)}release(){this.stream.write=this.method;const t=[...this.buffer.all];return this.buffer.reset(),t}write(...t){return this.method.apply(this.stream,t)}},ProcessOutput=class{options;stream;active;constructor(t,e,s){this.options=s,this.stream={stdout:new ProcessOutputStream(t??process.stdout),stderr:new ProcessOutputStream(e??process.stderr)},this.options={dump:["stdout","stderr"],leaveEmptyLine:!0,...s}}get stdout(){return this.stream.stdout.out}get stderr(){return this.stream.stderr.out}hijack(){if(this.active)throw new Error("ProcessOutput has been already hijacked!");this.stream.stdout.write(ANSI_ESCAPE_CODES.CURSOR_HIDE),Object.values(this.stream).forEach(t=>t.hijack()),this.active=!0}release(){const t=Object.entries(this.stream).map(([t,e])=>({name:t,buffer:e.release()})).filter(t=>this.options.dump.includes(t.name)).flatMap(t=>t.buffer).sort((t,e)=>t.time-e.time).map(t=>({...t,entry:cleanseAnsi(t.entry)})).filter(t=>t.entry);t.length>0&&(this.options.leaveEmptyLine&&this.stdout.write(EOL),t.forEach(t=>{(t.stream??this.stdout).write(t.entry+EOL)})),this.stream.stdout.write(ANSI_ESCAPE_CODES.CURSOR_SHOW),this.active=!1}toStdout(t,e=!0){return e&&(t+=EOL),this.stream.stdout.write(t)}toStderr(t,e=!0){return e&&(t+=EOL),this.stream.stderr.write(t)}};function createWritable(t){const e=new Writable;return e.rows=1/0,e.columns=1/0,e.write=e=>(t(e.toString()),!0),e}var ListrPromptAdapter=class{task;wrapper;state;constructor(t,e){this.task=t,this.wrapper=e}reportStarted(){if(this.state=this.task.state,this.task.prompt)throw new PromptError("There is already an active prompt attached to this task which may not be cleaned up properly.");this.task.prompt=this,this.task.state$="PROMPT"}reportFailed(){this.task.state$="PROMPT_FAILED",this.restoreState()}reportCompleted(){this.task.state$="PROMPT_COMPLETED",this.restoreState()}restoreState(){this.task.prompt=void 0,this.state&&(this.task.state=this.state)}},Spinner=class{spinner=isUnicodeSupported()?["⠋","⠙","⠹","⠸","⠼","⠴","⠦","⠧","⠇","⠏"]:["-","\\","|","/"];id;spinnerPosition=0;spin(){this.spinnerPosition=++this.spinnerPosition%this.spinner.length}fetch(){return this.spinner[this.spinnerPosition]}isRunning(){return!!this.id}start(t,e=100){this.id=setInterval(()=>{this.spin(),t&&t()},e)}stop(){clearInterval(this.id),this.id=void 0}};let ListrDefaultRendererLogLevels=function(t){return t.SKIPPED_WITH_COLLAPSE="SKIPPED_WITH_COLLAPSE",t.SKIPPED_WITHOUT_COLLAPSE="SKIPPED_WITHOUT_COLLAPSE",t.OUTPUT="OUTPUT",t.OUTPUT_WITH_BOTTOMBAR="OUTPUT_WITH_BOTTOMBAR",t.PENDING="PENDING",t.COMPLETED="COMPLETED",t.COMPLETED_WITH_FAILED_SUBTASKS="COMPLETED_WITH_FAILED_SUBTASKS",t.COMPLETED_WITH_FAILED_SISTER_TASKS="COMPLETED_WITH_SISTER_TASKS_FAILED",t.RETRY="RETRY",t.ROLLING_BACK="ROLLING_BACK",t.ROLLED_BACK="ROLLED_BACK",t.FAILED="FAILED",t.FAILED_WITH_FAILED_SUBTASKS="FAILED_WITH_SUBTASKS",t.WAITING="WAITING",t.PAUSED="PAUSED",t.CANCELLED="CANCELLED",t}({});const LISTR_DEFAULT_RENDERER_STYLE={icon:{SKIPPED_WITH_COLLAPSE:figures.arrowDown,SKIPPED_WITHOUT_COLLAPSE:figures.warning,OUTPUT:figures.pointerSmall,OUTPUT_WITH_BOTTOMBAR:figures.pointerSmall,PENDING:figures.pointer,COMPLETED:figures.tick,COMPLETED_WITH_FAILED_SUBTASKS:figures.warning,COMPLETED_WITH_SISTER_TASKS_FAILED:figures.squareSmallFilled,RETRY:figures.warning,ROLLING_BACK:figures.warning,ROLLED_BACK:figures.arrowLeft,FAILED:figures.cross,FAILED_WITH_SUBTASKS:figures.pointer,WAITING:figures.squareSmallFilled,PAUSED:figures.squareSmallFilled,CANCELLED:figures.circleSlash},color:{SKIPPED_WITH_COLLAPSE:color.yellow,SKIPPED_WITHOUT_COLLAPSE:color.yellow,PENDING:color.yellow,COMPLETED:color.green,COMPLETED_WITH_FAILED_SUBTASKS:color.yellow,COMPLETED_WITH_SISTER_TASKS_FAILED:color.red,RETRY:color.yellowBright,ROLLING_BACK:color.redBright,ROLLED_BACK:color.redBright,FAILED:color.red,FAILED_WITH_SUBTASKS:color.red,WAITING:color.dim,PAUSED:color.yellowBright,CANCELLED:color.red}};function parseTimer(t){const e=Math.floor(t/1e3),s=Math.floor(e/60);let r;return 0===e&&0===s&&(r=`0.${Math.floor(t/100)}s`),e>0&&(r=e%60+"s"),s>0&&(r=`${s}m${r}`),r}const PRESET_TIMER={condition:!0,field:parseTimer,format:()=>color.dim};function parseTimestamp(){const t=new Date;return String(t.getHours()).padStart(2,"0")+":"+String(t.getMinutes()).padStart(2,"0")+":"+String(t.getSeconds()).padStart(2,"0")}const PRESET_TIMESTAMP={condition:!0,field:parseTimestamp,format:()=>color.dim};var DefaultRenderer=class t{tasks;options;events;static nonTTY=!1;static rendererOptions={indentation:2,clearOutput:!1,showSubtasks:!0,collapseSubtasks:!0,collapseSkips:!0,showSkipMessage:!0,suffixSkips:!1,collapseErrors:!0,showErrorMessage:!0,suffixRetries:!0,lazy:!1,removeEmptyLines:!0,formatOutput:"wrap",pausedTimer:{...PRESET_TIMER,format:()=>color.yellowBright}};static rendererTaskOptions={outputBar:!0};prompt;activePrompt;spinner;logger;updater;truncate;wrap;buffer={output:new Map,bottom:new Map};cache={render:new Map,rendererOptions:new Map,rendererTaskOptions:new Map};constructor(e,s,r){this.tasks=e,this.options=s,this.events=r,this.options={...t.rendererOptions,...this.options,icon:{...LISTR_DEFAULT_RENDERER_STYLE.icon,...s?.icon??{}},color:{...LISTR_DEFAULT_RENDERER_STYLE.color,...s?.color??{}}},this.spinner=this.options.spinner??new Spinner,this.logger=this.options.logger??new ListrLogger({useIcons:!0,toStderr:[]}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color}async render(){const{createLogUpdate:t}=await import("log-update"),{default:e}=await import("cli-truncate"),{default:s}=await import("wrap-ansi");this.updater=t(this.logger.process.stdout),this.truncate=e,this.wrap=s,this.logger.process.hijack(),this.options?.lazy||this.spinner.start(()=>{this.update()}),this.events.on("SHOUD_REFRESH_RENDER",this.refresh)}update(){this.updater(this.create())}end(){this.spinner.stop(),this.events.off("SHOUD_REFRESH_RENDER",this.refresh),this.updater.clear(),this.updater.done(),this.options.clearOutput||this.logger.process.toStdout(this.create({prompt:!1})),this.logger.process.release()}create(t){t={tasks:!0,bottomBar:!0,prompt:!0,...t};const e=[],s=this.renderer(this.tasks),r=this.renderBottomBar(),i=this.renderPrompt();return t.tasks&&s.length>0&&e.push(...s),t.bottomBar&&r.length>0&&(e.length>0&&e.push(""),e.push(...r)),t.prompt&&i.length>0&&(e.length>0&&e.push(""),e.push(...i)),e.join(EOL)}style(t,e=!1){const s=this.cache.rendererOptions.get(t.id);if(t.isSkipped()){if(e||s.collapseSkips)return this.logger.icon("SKIPPED_WITH_COLLAPSE");if(!1===s.collapseSkips)return this.logger.icon("SKIPPED_WITHOUT_COLLAPSE")}if(e)return this.shouldOutputToBottomBar(t)?this.logger.icon("OUTPUT_WITH_BOTTOMBAR"):this.logger.icon("OUTPUT");if(t.hasSubtasks()){if(t.isStarted()||t.isPrompt()&&!1!==s.showSubtasks&&!t.subtasks.every(t=>!t.hasTitle()))return this.logger.icon("PENDING");if(t.isCompleted()&&t.subtasks.some(t=>t.hasFailed()))return this.logger.icon("COMPLETED_WITH_FAILED_SUBTASKS");if(t.hasFailed())return this.logger.icon("FAILED_WITH_SUBTASKS")}return t.isStarted()||t.isPrompt()?this.logger.icon("PENDING",!this.options?.lazy&&this.spinner.fetch()):t.isCompleted()?this.logger.icon("COMPLETED"):t.isRetrying()?this.logger.icon("RETRY",!this.options?.lazy&&this.spinner.fetch()):t.isRollingBack()?this.logger.icon("ROLLING_BACK",!this.options?.lazy&&this.spinner.fetch()):t.hasRolledBack()?this.logger.icon("ROLLED_BACK"):t.hasFailed()?this.logger.icon("FAILED"):t.isCancelled()?this.logger.icon("CANCELLED"):t.isPaused()?this.logger.icon("PAUSED"):this.logger.icon("WAITING")}format(t,e,s){if(""===t.trim())return[];let r;e&&(t=e+" "+t);const i=(this.logger.process.stdout.columns??80)-s*this.options.indentation-2;switch(this.options.formatOutput){case"truncate":r=t.split(EOL).map((t,e)=>this.truncate(this.indent(t,e),i));break;case"wrap":r=this.wrap(t,i,{hard:!0,trim:!1}).split(EOL).map((t,e)=>this.indent(t,e));break;default:throw new ListrRendererError("Format option for the renderer is wrong.")}return this.options.removeEmptyLines&&(r=r.filter(Boolean)),r.map(t=>indent(t,s*this.options.indentation))}shouldOutputToOutputBar(t){const e=this.cache.rendererTaskOptions.get(t.id).outputBar;return"number"==typeof e&&0!==e||"boolean"==typeof e&&!1!==e}shouldOutputToBottomBar(t){const e=this.cache.rendererTaskOptions.get(t.id).bottomBar;return"number"==typeof e&&0!==e||"boolean"==typeof e&&!1!==e||!t.hasTitle()}refresh=()=>{this.update()};renderer(t,e=0){return t.flatMap(s=>{if(!s.isEnabled())return[];if(this.cache.render.has(s.id))return this.cache.render.get(s.id);this.calculate(s),this.setupBuffer(s);const r=this.cache.rendererOptions.get(s.id),i=this.cache.rendererTaskOptions.get(s.id),o=[];if(s.isPrompt()){if(this.activePrompt&&this.activePrompt!==s.id)throw new ListrRendererError("Only one prompt can be active at the given time, please re-evaluate your task design.");this.activePrompt||(s.on("PROMPT",t=>{const e=cleanseAnsi(t);e&&(this.prompt=e)}),s.on("STATE",t=>{("PROMPT_COMPLETED"===t||s.hasFinalized()||s.hasReset())&&(this.prompt=null,this.activePrompt=null,s.off("PROMPT"))}),this.activePrompt=s.id)}if(s.hasTitle()&&(!t.some(t=>t.hasFailed())||s.hasFailed()||!1===s.options.exitOnError||(s.isCompleted()||s.isSkipped()||s.isCancelled())?s.hasFailed()&&r.collapseErrors?o.push(...this.format(!s.hasSubtasks()&&s.message.error&&r.showErrorMessage?s.message.error:s.title,this.style(s),e)):s.isSkipped()&&r.collapseSkips?o.push(...this.format(this.logger.suffix(s.message.skip&&r.showSkipMessage?s.message.skip:s.title,{field:"SKIPPED",condition:r.suffixSkips,format:()=>color.dim}),this.style(s),e)):s.isRetrying()?o.push(...this.format(this.logger.suffix(s.title,{field:`RETRY:${s.message.retry.count}`,format:()=>color.yellow,condition:r.suffixRetries}),this.style(s),e)):s.isCompleted()&&s.hasTitle()&&assertFunctionOrSelf(i.timer?.condition,s.message.duration)?o.push(...this.format(this.logger.suffix(s?.title,{...i.timer,args:[s.message.duration]}),this.style(s),e)):s.isPaused()?o.push(...this.format(this.logger.suffix(s.title,{...r.pausedTimer,args:[s.message.paused-Date.now()]}),this.style(s),e)):o.push(...this.format(s.title,this.style(s),e)):o.push(...this.format(s.title,this.logger.icon("COMPLETED_WITH_SISTER_TASKS_FAILED"),e))),s.hasSubtasks()&&r.showSubtasks||(!s.hasFailed()||!1!==r.collapseErrors||!r.showErrorMessage&&r.showSubtasks?!s.isSkipped()||!1!==r.collapseSkips||!r.showSkipMessage&&r.showSubtasks||o.push(...this.dump(s,e,"SKIPPED")):o.push(...this.dump(s,e,"FAILED"))),(s.isPending()||i.persistentOutput)&&o.push(...this.renderOutputBar(s,e)),!1!==r.showSubtasks&&s.hasSubtasks()&&(s.isPending()||s.hasFinalized()&&!s.hasTitle()||s.isCompleted()&&!1===r.collapseSubtasks&&!s.subtasks.some(t=>!0===this.cache.rendererOptions.get(t.id)?.collapseSubtasks)||s.subtasks.some(t=>!1===this.cache.rendererOptions.get(t.id)?.collapseSubtasks)||s.subtasks.some(t=>t.hasFailed())||s.subtasks.some(t=>t.hasRolledBack())||s.subtasks.some(t=>t.isCancelled()))){const t=s.hasTitle()?e+1:e,r=this.renderer(s.subtasks,t);o.push(...r)}return s.hasFinalized()&&(i.persistentOutput||(this.buffer.bottom.delete(s.id),this.buffer.output.delete(s.id))),s.isClosed()&&(this.cache.render.set(s.id,o),this.reset(s)),o})}renderOutputBar(t,e){const s=this.buffer.output.get(t.id);return s?s.all.flatMap(s=>this.dump(t,e,"OUTPUT",s.entry)):[]}renderBottomBar(){return 0===this.buffer.bottom.size?[]:Array.from(this.buffer.bottom.values()).flatMap(t=>t.all).sort((t,e)=>t.time-e.time).map(t=>t.entry)}renderPrompt(){return this.prompt?[this.prompt]:[]}calculate(e){if(this.cache.rendererOptions.has(e.id)&&this.cache.rendererTaskOptions.has(e.id))return;const s={...this.options,...e.rendererOptions};this.cache.rendererOptions.set(e.id,s),this.cache.rendererTaskOptions.set(e.id,{...t.rendererTaskOptions,timer:s.timer,...e.rendererTaskOptions})}setupBuffer(t){if(this.buffer.bottom.has(t.id)||this.buffer.output.has(t.id))return;if(t.hasFinalized())return;const e=this.cache.rendererTaskOptions.get(t.id);this.shouldOutputToBottomBar(t)&&!this.buffer.bottom.has(t.id)?(this.buffer.bottom.set(t.id,new ProcessOutputBuffer({limit:"number"==typeof e.bottomBar?e.bottomBar:1})),t.on("OUTPUT",e=>{const s=this.dump(t,-1,"OUTPUT",e);this.buffer.bottom.get(t.id).write(s.join(EOL))}),t.on("OUTPUT_RESET",()=>{this.buffer.bottom.get(t.id)?.reset()}),t.on("STATE",e=>{"RETRY"!==e&&"ROLLING_BACK"!==e||this.buffer.bottom.delete(t.id)})):this.shouldOutputToOutputBar(t)&&!this.buffer.output.has(t.id)&&(this.buffer.output.set(t.id,new ProcessOutputBuffer({limit:"number"==typeof e.outputBar?e.outputBar:1})),t.on("OUTPUT",e=>{this.buffer.output.get(t.id).write(e)}),t.on("OUTPUT_RESET",()=>{this.buffer.output.get(t.id)?.reset()}),t.on("STATE",e=>{"RETRY"!==e&&"ROLLING_BACK"!==e||this.buffer.output.delete(t.id)}))}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id),this.buffer.output.delete(t.id)}dump(t,e,s="OUTPUT",r){if(!r)switch(s){case"OUTPUT":r=t.output;break;case"SKIPPED":r=t.message.skip;break;case"FAILED":r=t.message.error}return t.hasTitle()&&"FAILED"===s&&r===t.title||"string"!=typeof r?[]:("OUTPUT"===s&&(r=cleanseAnsi(r)),this.format(r,this.style(t,!0),e+1))}indent(t,e){return e>0?indent(t.trimEnd(),this.options.indentation):t.trimEnd()}},SilentRenderer=class{tasks;options;static nonTTY=!0;static rendererOptions;static rendererTaskOptions;constructor(t,e){this.tasks=t,this.options=e}render(){}end(){}},SimpleRenderer=class t{tasks;options;static nonTTY=!0;static rendererOptions={pausedTimer:{...PRESET_TIMER,field:t=>`PAUSED:${t}`,format:()=>color.yellowBright}};static rendererTaskOptions={};logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};constructor(e,s){this.tasks=e,this.options=s,this.options={...t.rendererOptions,...s,icon:{...LISTR_LOGGER_STYLE.icon,...s?.icon??{}},color:{...LISTR_LOGGER_STYLE.color,...s?.color??{}}},this.logger=this.options.logger??new ListrLogger({useIcons:!0,toStderr:LISTR_LOGGER_STDERR_LEVELS}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}end(){}render(){this.renderer(this.tasks)}renderer(t){t.forEach(t=>{this.calculate(t),t.once("CLOSED",()=>{this.reset(t)});const e=this.cache.rendererOptions.get(t.id),s=this.cache.rendererTaskOptions.get(t.id);t.on("SUBTASK",t=>{this.renderer(t)}),t.on("STATE",e=>{if(t.hasTitle())if("STARTED"===e)this.logger.log("STARTED",t.title);else if("COMPLETED"===e){const e=s?.timer;this.logger.log("COMPLETED",t.title,e&&{suffix:{...e,condition:!!t.message?.duration&&e.condition,args:[t.message.duration]}})}else"PROMPT"===e?(this.logger.process.hijack(),t.on("PROMPT",t=>{this.logger.process.toStderr(t,!1)})):"PROMPT_COMPLETED"===e?(t.off("PROMPT"),this.logger.process.release()):"CANCELLED"===e&&this.logger.log("CANCELLED",t.title)}),t.on("OUTPUT",t=>{this.logger.log("OUTPUT",t)}),t.on("MESSAGE",s=>{if(s.error)this.logger.log("FAILED",t.title,{suffix:{field:`FAILED: ${s.error}`,format:()=>color.red}});else if(s.skip)this.logger.log("SKIPPED",t.title,{suffix:{field:`SKIPPED: ${s.skip}`,format:()=>color.yellow}});else if(s.rollback)this.logger.log("ROLLBACK",t.title,{suffix:{field:`ROLLBACK: ${s.rollback}`,format:()=>color.red}});else if(s.retry)this.logger.log("RETRY",t.title,{suffix:{field:`RETRY:${s.retry.count}`,format:()=>color.red}});else if(s.paused){const r=e?.pausedTimer;this.logger.log("PAUSED",t.title,r&&{suffix:{...r,condition:!!s?.paused&&r.condition,args:[s.paused-Date.now()]}})}})})}calculate(e){if(this.cache.rendererOptions.has(e.id)&&this.cache.rendererTaskOptions.has(e.id))return;const s={...this.options,...e.rendererOptions};this.cache.rendererOptions.set(e.id,s),this.cache.rendererTaskOptions.set(e.id,{...t.rendererTaskOptions,timer:s.timer,...e.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},TestRendererSerializer=class{options;constructor(t){this.options=t}serialize(t,e,s){return JSON.stringify(this.generate(t,e,s))}generate(t,e,s){const r={event:t,data:e};if("boolean"!=typeof this.options?.task){const t=Object.fromEntries(this.options.task.map(t=>{const e=s[t];return"function"==typeof e?[t,e.call(s)]:[t,e]}));Object.keys(s).length>0&&(r.task=t)}return r}},TestRenderer=class t{tasks;options;static nonTTY=!0;static rendererOptions={subtasks:!0,state:Object.values(ListrTaskState),output:!0,prompt:!0,title:!0,messages:["skip","error","retry","rollback","paused"],messagesToStderr:["error","rollback","retry"],task:["hasRolledBack","isRollingBack","isCompleted","isSkipped","hasFinalized","hasSubtasks","title","hasReset","hasTitle","isPrompt","isPaused","isPending","isCancelled","isStarted","hasFailed","isEnabled","isRetrying","path"]};static rendererTaskOptions;logger;serializer;constructor(e,s){this.tasks=e,this.options=s,this.options={...t.rendererOptions,...this.options},this.logger=this.options.logger??new ListrLogger({useIcons:!1}),this.serializer=new TestRendererSerializer(this.options)}render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(t=>{this.options.subtasks&&t.on("SUBTASK",t=>{this.renderer(t)}),this.options.state&&t.on("STATE",e=>{this.logger.toStdout(this.serializer.serialize("STATE",e,t))}),this.options.output&&t.on("OUTPUT",e=>{this.logger.toStdout(this.serializer.serialize("OUTPUT",e,t))}),this.options.prompt&&t.on("PROMPT",e=>{this.logger.toStdout(this.serializer.serialize("PROMPT",e,t))}),this.options.title&&t.on("TITLE",e=>{this.logger.toStdout(this.serializer.serialize("TITLE",e,t))}),t.on("MESSAGE",e=>{const s=Object.fromEntries(Object.entries(e).map(([t,e])=>{if(this.options.messages.includes(t))return[t,e]}).filter(Boolean));if(Object.keys(s).length>0){const e=this.serializer.serialize("MESSAGE",s,t);this.options.messagesToStderr.some(t=>Object.keys(s).includes(t))?this.logger.toStderr(e):this.logger.toStdout(e)}})})}},VerboseRenderer=class t{tasks;options;static nonTTY=!0;static rendererOptions={logTitleChange:!1,pausedTimer:{...PRESET_TIMER,format:()=>color.yellowBright}};static rendererTaskOptions;logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};constructor(e,s){this.tasks=e,this.options=s,this.options={...t.rendererOptions,...this.options,icon:{...LISTR_LOGGER_STYLE.icon,...s?.icon??{}},color:{...LISTR_LOGGER_STYLE.color,...s?.color??{}}},this.logger=this.options.logger??new ListrLogger({useIcons:!1,toStderr:LISTR_LOGGER_STDERR_LEVELS}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(t=>{this.calculate(t),t.once("CLOSED",()=>{this.reset(t)});const e=this.cache.rendererOptions.get(t.id),s=this.cache.rendererTaskOptions.get(t.id);t.on("SUBTASK",t=>{this.renderer(t)}),t.on("STATE",e=>{if(t.hasTitle())if("STARTED"===e)this.logger.log("STARTED",t.title);else if("COMPLETED"===e){const e=s.timer;this.logger.log("COMPLETED",t.title,e&&{suffix:{...e,condition:!!t.message?.duration&&e.condition,args:[t.message.duration]}})}else"CANCELLED"===e&&this.logger.log("CANCELLED",t.title)}),t.on("OUTPUT",t=>{this.logger.log("OUTPUT",t)}),t.on("PROMPT",t=>{const e=cleanseAnsi(t);e&&this.logger.log("PROMPT",e)}),!1!==this.options?.logTitleChange&&t.on("TITLE",t=>{this.logger.log("TITLE",t)}),t.on("MESSAGE",s=>{if(s?.error)this.logger.log("FAILED",s.error);else if(s?.skip)this.logger.log("SKIPPED",s.skip);else if(s?.rollback)this.logger.log("ROLLBACK",s.rollback);else if(s?.retry)this.logger.log("RETRY",t.title,{suffix:s.retry.count.toString()});else if(s?.paused){const r=e?.pausedTimer;this.logger.log("PAUSED",t.title,r&&{suffix:{...r,condition:!!s?.paused&&r.condition,args:[s.paused-Date.now()]}})}})})}calculate(e){if(this.cache.rendererOptions.has(e.id)&&this.cache.rendererTaskOptions.has(e.id))return;const s={...this.options,...e.rendererOptions};this.cache.rendererOptions.set(e.id,s),this.cache.rendererTaskOptions.set(e.id,{...t.rendererTaskOptions,timer:s.timer,...e.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}};const RENDERERS={default:DefaultRenderer,simple:SimpleRenderer,verbose:VerboseRenderer,test:TestRenderer,silent:SilentRenderer};function isRendererSupported(t){return!0===process.stdout.isTTY||!0===t.nonTTY}function getRendererClass(t){return"string"==typeof t?RENDERERS[t]??RENDERERS.default:"function"==typeof t?t:RENDERERS.default}function getRenderer(t){if(assertFunctionOrSelf(t?.silentRendererCondition))return{renderer:getRendererClass("silent"),selection:"SILENT"};const e={renderer:getRendererClass(t.renderer),options:t.rendererOptions,selection:"PRIMARY"};return!isRendererSupported(e.renderer)||assertFunctionOrSelf(t?.fallbackRendererCondition)?{renderer:getRendererClass(t.fallbackRenderer),options:t.fallbackRendererOptions,selection:"SECONDARY"}:e}function assertFunctionOrSelf(t,...e){return"function"==typeof t?t(...e):t}var Concurrency=class{concurrency;count;queue;constructor(t){this.concurrency=t.concurrency,this.count=0,this.queue=new Set}add(t){return this.count<this.concurrency?this.run(t):new Promise(e=>{this.queue.add(()=>e(this.run(t)))})}flush(){for(const t of this.queue){if(this.count>=this.concurrency)break;this.queue.delete(t),t()}}run(t){this.count++;const e=t();return e.then(()=>{this.count--,this.flush()},()=>{this.queue.clear()}),e}};function delay(t){return new Promise(e=>{setTimeout(e,t)})}var TaskWrapper=class{task;constructor(t){this.task=t}get title(){return this.task.title}set title(t){t=Array.isArray(t)?t:[t],this.task.title$=splat(t.shift(),...t)}get output(){return this.task.output}set output(t){null!==t?(t=Array.isArray(t)?t:[t],this.task.output$=splat(t.shift(),...t)):this.task.outputReset$=null}set promptOutput(t){this.task.promptOutput$=t}get signal(){return this.task.listr.signal}cancel(){this.task.listr.cancel()}newListr(t,e){let s;return s="function"==typeof t?t(this):t,new Listr(s,e,this.task)}report(t,e){this.task.options.collectErrors&&this.task.listr.errors?.push(new ListrError(t,e,this.task)),this.task.message$={error:t.message??this.task?.title}}skip(t,...e){this.task.state$="SKIPPED",t&&(this.task.message$={skip:t?splat(t,...e):this.task?.title})}isRetrying(){return this.task.isRetrying()?this.task.retry:{count:0}}prompt(t){return this.task.prompt?this.task.prompt:new t(this.task,this)}stdout(t){return createWritable(e=>{if("PROMPT"===t)this.promptOutput=e;else this.output=e})}run(t){return this.task.run(t,this)}},ListrTaskEventManager=class extends EventManager{},Task=class extends ListrTaskEventManager{listr;task;options;rendererOptions;rendererTaskOptions;id=randomUUID();state="WAITING";subtasks;title;initialTitle;output;retry;message={};prompt;parent;enabled;taskFn;closed;constructor(t,e,s,r,i){if(super(),this.listr=t,this.task=e,this.options=s,this.rendererOptions=r,this.rendererTaskOptions=i,e.title){const t=Array.isArray(e?.title)?e.title:[e.title];this.title=splat(t.shift(),...t),this.initialTitle=this.title}this.taskFn=e.task,this.parent=t.parentTask}set state$(t){if(this.state=t,this.emit("STATE",t),this.hasSubtasks()&&this.hasFailed())for(const t of this.subtasks)"STARTED"===t.state&&(t.state$="FAILED");this.listr.events.emit("SHOUD_REFRESH_RENDER")}set output$(t){this.output=t,this.emit("OUTPUT",t),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set outputReset$(t){this.output=t,this.emit("OUTPUT_RESET"),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set promptOutput$(t){this.emit("PROMPT",t),cleanseAnsi(t)&&this.listr.events.emit("SHOUD_REFRESH_RENDER")}set message$(t){this.message={...this.message,...t},this.emit("MESSAGE",t),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set title$(t){this.title=t,this.emit("TITLE",t),this.listr.events.emit("SHOUD_REFRESH_RENDER")}get path(){return[...this.listr.path,this.initialTitle]}async check(t){return"WAITING"===this.state&&(this.enabled=await assertFunctionOrSelf(this.task?.enabled??!0,t),this.emit("ENABLED",this.enabled),this.listr.events.emit("SHOUD_REFRESH_RENDER")),this.enabled}hasSubtasks(){return this.subtasks?.length>0}hasFinalized(){return this.isCompleted()||this.hasFailed()||this.isSkipped()||this.hasRolledBack()||this.isCancelled()}isPending(){return this.isStarted()||this.isPrompt()||this.hasReset()}isStarted(){return"STARTED"===this.state}isSkipped(){return"SKIPPED"===this.state}isCompleted(){return"COMPLETED"===this.state}hasFailed(){return"FAILED"===this.state}isCancelled(){return"CANCELLED"===this.state}isRollingBack(){return"ROLLING_BACK"===this.state}hasRolledBack(){return"ROLLED_BACK"===this.state}isRetrying(){return"RETRY"===this.state}hasReset(){return"RETRY"===this.state||"ROLLING_BACK"===this.state}isEnabled(){return this.enabled}hasTitle(){return"string"==typeof this?.title}isPrompt(){return"PROMPT"===this.state}isPaused(){return"PAUSED"===this.state}isClosed(){return this.closed}async pause(t){const e=this.state;this.state$="PAUSED",this.message$={paused:Date.now()+t},await delay(t),this.state$=e,this.message$={paused:null}}async run(t,e){const s=e=>(e instanceof Listr?(e.options={...this.options,...e.options},e.rendererClass=getRendererClass("silent"),this.subtasks=e.tasks,e.errors=this.listr.errors,this.emit("SUBTASK",this.subtasks),e=e.run(t)):e instanceof Promise?e=e.then(s):isReadable(e)?e=new Promise((t,s)=>{e.on("data",t=>{this.output$=t.toString()}),e.on("error",t=>s(t)),e.on("end",()=>t(null))}):isObservable(e)&&(e=new Promise((t,s)=>{e.subscribe({next:t=>{this.output$=t},error:s,complete:t})})),e),r=Date.now();this.state$="STARTED";const i=await assertFunctionOrSelf(this.task?.skip??!1,t);if(i)return"string"==typeof i?this.message$={skip:i}:this.hasTitle()?this.message$={skip:this.title}:this.message$={skip:"Skipped task without a title."},void(this.state$="SKIPPED");try{const i="number"==typeof this.task?.retry&&this.task.retry>0?this.task.retry+1:"object"==typeof this.task?.retry&&this.task.retry.tries>0?this.task.retry.tries+1:1,o="object"==typeof this.task.retry&&this.task.retry.delay;for(let r=1;r<=i;r++)try{await Promise.race([s(this.taskFn(t,e)),this.whenInterrupted()]);break}catch(t){if(this.listr.signal.aborted)throw t;if(r===i)throw t;this.retry={count:r,error:t},this.message$={retry:this.retry},this.title$=this.initialTitle,this.output=void 0,e.report(t,"WILL_RETRY"),this.state$="RETRY",o&&await this.pause(o)}(this.isStarted()||this.isRetrying())&&(this.message$={duration:Date.now()-r},this.state$="COMPLETED")}catch(s){if(this.prompt instanceof PromptError&&(s=this.prompt),this.task?.rollback){e.report(s,"WILL_ROLLBACK");try{this.state$="ROLLING_BACK",await this.task.rollback(t,e),this.message$={rollback:this.title},this.state$="ROLLED_BACK"}catch(t){throw this.state$="FAILED",e.report(t,"HAS_FAILED_TO_ROLLBACK"),this.close(),t}if(!1!==this.listr.options?.exitAfterRollback)throw this.close(),s}else{if(this.listr.signal.aborted)throw this.state$="CANCELLED",s;if(this.state$="FAILED",!1!==this.listr.options.exitOnError&&!1!==await assertFunctionOrSelf(this.task?.exitOnError,t))throw e.report(s,"HAS_FAILED"),this.close(),s;this.hasSubtasks()||e.report(s,"HAS_FAILED_WITHOUT_ERROR")}}finally{this.close()}}close(){this.emit("CLOSED"),this.listr.events.emit("SHOUD_REFRESH_RENDER"),this.complete()}whenInterrupted(){return new Promise((t,e)=>{const s=()=>{this.hasSubtasks()||e(new Error("Interrupted."))};this.listr.signal.aborted?s():this.listr.signal.addEventListener("abort",s,{once:!0})})}},ListrEventManager=class extends EventManager{},Listr=class{task;options;parentTask;tasks=[];errors;ctx;events;path=[];rendererClass;rendererClassOptions;rendererSelection;boundSignalHandler;signal;concurrency;renderer;abortController;startedTasks=[];constructor(t,e,s){this.task=t,this.options=e,this.parentTask=s,this.options={concurrent:!1,renderer:"default",fallbackRenderer:"simple",exitOnError:!0,exitAfterRollback:!0,collectErrors:!1,registerSignalListeners:!0,...this.parentTask?.options??{},...e},!0===this.options.concurrent?this.options.concurrent=1/0:"number"!=typeof this.options.concurrent&&(this.options.concurrent=1),this.concurrency=new Concurrency({concurrency:this.options.concurrent}),s?(this.path=[...s.listr.path,s.title],this.errors=s.listr.errors):this.errors=this.options.collectErrors?[]:null,this.parentTask?.listr.events instanceof ListrEventManager?this.events=this.parentTask.listr.events:this.events=new ListrEventManager,this.parentTask?.listr.abortController instanceof AbortController?this.abortController=this.parentTask.listr.abortController:(this.abortController=new AbortController,setMaxListeners(0,this.abortController.signal)),this.signal=this.abortController.signal,(this.options?.forceTTY||process.env.LISTR_FORCE_TTY)&&(process.stdout.isTTY=!0,process.stderr.isTTY=!0),this.options?.forceUnicode&&(process.env.LISTR_FORCE_UNICODE="1");const r=getRenderer({renderer:this.options.renderer,rendererOptions:this.options.rendererOptions,fallbackRenderer:this.options.fallbackRenderer,fallbackRendererOptions:this.options.fallbackRendererOptions,fallbackRendererCondition:this.options?.fallbackRendererCondition,silentRendererCondition:this.options?.silentRendererCondition});this.rendererClass=r.renderer,this.rendererClassOptions=r.options,this.rendererSelection=r.selection,this.add(t??[]),this.options.registerSignalListeners&&this.isRoot()&&(this.boundSignalHandler=this.signalHandler.bind(this),process.on("SIGINT",this.boundSignalHandler).setMaxListeners(0))}isRoot(){return!this.parentTask}isSubtask(){return!!this.parentTask}add(t){this.tasks.push(...this.generate(t))}async run(t){let e;this.renderer||(this.renderer=new this.rendererClass(this.tasks,this.rendererClassOptions,this.events)),await this.renderer.render(),this.ctx=this.options?.ctx??t??{};let s=!1;try{await Promise.all(this.tasks.map(t=>t.check(this.ctx))),await Promise.all(this.tasks.map(t=>this.concurrency.add(()=>this.runTask(t))))}catch(t){s=!0,e=t}if(this.signal.aborted){if(await Promise.allSettled(this.startedTasks),this.isRoot())return this.cancelUnfinishedTasks(),this.renderer.end(),this.removeSignalHandler(),process.exit(127),this.ctx;throw e??new Error("Interrupted.")}if(s&&!1!==this.options.exitOnError)throw this.renderer.end(e),this.removeSignalHandler(),e;return s||(this.renderer.end(),this.removeSignalHandler()),this.ctx}cancel(){this.abortController.abort()}generate(t){return(t=Array.isArray(t)?t:[t]).map(t=>{let e;return"PRIMARY"===this.rendererSelection?e=t.rendererOptions:"SECONDARY"===this.rendererSelection&&(e=t.fallbackRendererOptions),new Task(this,t,this.options,this.rendererClassOptions,e)})}async runTask(t){if(!await t.check(this.ctx))return;const e=new TaskWrapper(t).run(this.ctx);return this.startedTasks.push(e),e}signalHandler(){this.abortController.abort()}removeSignalHandler(){this.boundSignalHandler&&process.removeListener("SIGINT",this.boundSignalHandler)}cancelUnfinishedTasks(t=this.tasks){for(const e of t)e.hasSubtasks()&&this.cancelUnfinishedTasks(e.subtasks),!1===e.isEnabled()||e.hasFinalized()||(e.state$="CANCELLED")}};export{ANSI_ESCAPE,ANSI_ESCAPE_CODES,BaseEventMap,Concurrency,DefaultRenderer,EventManager,LISTR_DEFAULT_RENDERER_STYLE,LISTR_LOGGER_STDERR_LEVELS,LISTR_LOGGER_STYLE,Listr,ListrDefaultRendererLogLevels,ListrEnvironmentVariables,ListrError,ListrErrorTypes,ListrEventManager,ListrEventType,ListrLogLevels,ListrLogger,ListrPromptAdapter,ListrRendererError,ListrRendererSelection,ListrTaskEventManager,ListrTaskEventType,ListrTaskState,PRESET_TIMER,PRESET_TIMESTAMP,ProcessOutput,ProcessOutputBuffer,ProcessOutputStream,PromptError,SilentRenderer,SimpleRenderer,Spinner,TestRenderer,TestRendererSerializer,VerboseRenderer,assertFunctionOrSelf,cleanseAnsi,color,createWritable,delay,figures,getRenderer,getRendererClass,indent,isObservable,isReadable,isUnicodeSupported,parseTimer,parseTimestamp,splat};
//# sourceMappingURL=/sm/3418738505ba5667baabfed2b106be90bd1cd406cebc91272d1cd49b436d520f.map