UNPKG

storybook

Version:

Storybook framework-agnostic API

1,444 lines (1,413 loc) • 2.95 MB
"use strict"; var kJ = Object.create; var Vc = Object.defineProperty; var BJ = Object.getOwnPropertyDescriptor; var NJ = Object.getOwnPropertyNames; var MJ = Object.getPrototypeOf, RJ = Object.prototype.hasOwnProperty; var s = (e, t) => Vc(e, "name", { value: t, configurable: !0 }); var E = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), jJ = (e, t) => { for (var r in t) Vc(e, r, { get: t[r], enumerable: !0 }); }, wF = (e, t, r, i) => { if (t && typeof t == "object" || typeof t == "function") for (let n of NJ(t)) !RJ.call(e, n) && n !== r && Vc(e, n, { get: () => t[n], enumerable: !(i = BJ(t, n)) || i.enumerable }); return e; }; var rt = (e, t, r) => (r = e != null ? kJ(MJ(e)) : {}, wF( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. t || !e || !e.__esModule ? Vc(r, "default", { value: e, enumerable: !0 }) : r, e )), LJ = (e) => wF(Vc({}, "__esModule", { value: !0 }), e); // ../node_modules/kleur/index.js var nr = E((AYe, MF) => { "use strict"; var { FORCE_COLOR: VJ, NODE_DISABLE_COLORS: HJ, TERM: KJ } = process.env, Ot = { enabled: !HJ && KJ !== "dumb" && VJ !== "0", // modifiers reset: Rt(0, 0), bold: Rt(1, 22), dim: Rt(2, 22), italic: Rt(3, 23), underline: Rt(4, 24), inverse: Rt(7, 27), hidden: Rt(8, 28), strikethrough: Rt(9, 29), // colors black: Rt(30, 39), red: Rt(31, 39), green: Rt(32, 39), yellow: Rt(33, 39), blue: Rt(34, 39), magenta: Rt(35, 39), cyan: Rt(36, 39), white: Rt(37, 39), gray: Rt(90, 39), grey: Rt(90, 39), // background colors bgBlack: Rt(40, 49), bgRed: Rt(41, 49), bgGreen: Rt(42, 49), bgYellow: Rt(43, 49), bgBlue: Rt(44, 49), bgMagenta: Rt(45, 49), bgCyan: Rt(46, 49), bgWhite: Rt(47, 49) }; function NF(e, t) { let r = 0, i, n = "", a = ""; for (; r < e.length; r++) i = e[r], n += i.open, a += i.close, t.includes(i.close) && (t = t.replace(i.rgx, i.close + i.open)); return n + t + a; } s(NF, "run"); function zJ(e, t) { let r = { has: e, keys: t }; return r.reset = Ot.reset.bind(r), r.bold = Ot.bold.bind(r), r.dim = Ot.dim.bind(r), r.italic = Ot.italic.bind(r), r.underline = Ot.underline. bind(r), r.inverse = Ot.inverse.bind(r), r.hidden = Ot.hidden.bind(r), r.strikethrough = Ot.strikethrough.bind(r), r.black = Ot.black.bind( r), r.red = Ot.red.bind(r), r.green = Ot.green.bind(r), r.yellow = Ot.yellow.bind(r), r.blue = Ot.blue.bind(r), r.magenta = Ot.magenta.bind( r), r.cyan = Ot.cyan.bind(r), r.white = Ot.white.bind(r), r.gray = Ot.gray.bind(r), r.grey = Ot.grey.bind(r), r.bgBlack = Ot.bgBlack.bind( r), r.bgRed = Ot.bgRed.bind(r), r.bgGreen = Ot.bgGreen.bind(r), r.bgYellow = Ot.bgYellow.bind(r), r.bgBlue = Ot.bgBlue.bind(r), r.bgMagenta = Ot.bgMagenta.bind(r), r.bgCyan = Ot.bgCyan.bind(r), r.bgWhite = Ot.bgWhite.bind(r), r; } s(zJ, "chain"); function Rt(e, t) { let r = { open: `\x1B[${e}m`, close: `\x1B[${t}m`, rgx: new RegExp(`\\x1b\\[${t}m`, "g") }; return function(i) { return this !== void 0 && this.has !== void 0 ? (this.has.includes(e) || (this.has.push(e), this.keys.push(r)), i === void 0 ? this : Ot. enabled ? NF(this.keys, i + "") : i + "") : i === void 0 ? zJ([e], [r]) : Ot.enabled ? NF([r], i + "") : i + ""; }; } s(Rt, "init"); MF.exports = Ot; }); // ../node_modules/prompts/dist/util/action.js var jF = E((PYe, RF) => { "use strict"; RF.exports = (e, t) => { if (!(e.meta && e.name !== "escape")) { if (e.ctrl) { if (e.name === "a") return "first"; if (e.name === "c" || e.name === "d") return "abort"; if (e.name === "e") return "last"; if (e.name === "g") return "reset"; } if (t) { if (e.name === "j") return "down"; if (e.name === "k") return "up"; } return e.name === "return" || e.name === "enter" ? "submit" : e.name === "backspace" ? "delete" : e.name === "delete" ? "deleteForward" : e.name === "abort" ? "abort" : e.name === "escape" ? "exit" : e.name === "tab" ? "next" : e.name === "pagedown" ? "nextPage" : e.name === "pageup" ? "prevPage" : e.name === "home" ? "home" : e.name === "end" ? "end" : e.name === "up" ? "up" : e.name === "down" ? "down" : e. name === "right" ? "right" : e.name === "left" ? "left" : !1; } }; }); // ../node_modules/prompts/dist/util/strip.js var sh = E((FYe, LF) => { "use strict"; LF.exports = (e) => { let t = ["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)", "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|"), r = new RegExp(t, "g"); return typeof e == "string" ? e.replace(r, "") : e; }; }); // ../node_modules/sisteransi/src/index.js var ar = E((IYe, qF) => { "use strict"; var lD = "\x1B", sr = `${lD}[`, GJ = "\x07", cD = { to(e, t) { return t ? `${sr}${t + 1};${e + 1}H` : `${sr}${e + 1}G`; }, move(e, t) { let r = ""; return e < 0 ? r += `${sr}${-e}D` : e > 0 && (r += `${sr}${e}C`), t < 0 ? r += `${sr}${-t}A` : t > 0 && (r += `${sr}${t}B`), r; }, up: /* @__PURE__ */ s((e = 1) => `${sr}${e}A`, "up"), down: /* @__PURE__ */ s((e = 1) => `${sr}${e}B`, "down"), forward: /* @__PURE__ */ s((e = 1) => `${sr}${e}C`, "forward"), backward: /* @__PURE__ */ s((e = 1) => `${sr}${e}D`, "backward"), nextLine: /* @__PURE__ */ s((e = 1) => `${sr}E`.repeat(e), "nextLine"), prevLine: /* @__PURE__ */ s((e = 1) => `${sr}F`.repeat(e), "prevLine"), left: `${sr}G`, hide: `${sr}?25l`, show: `${sr}?25h`, save: `${lD}7`, restore: `${lD}8` }, JJ = { up: /* @__PURE__ */ s((e = 1) => `${sr}S`.repeat(e), "up"), down: /* @__PURE__ */ s((e = 1) => `${sr}T`.repeat(e), "down") }, XJ = { screen: `${sr}2J`, up: /* @__PURE__ */ s((e = 1) => `${sr}1J`.repeat(e), "up"), down: /* @__PURE__ */ s((e = 1) => `${sr}J`.repeat(e), "down"), line: `${sr}2K`, lineEnd: `${sr}K`, lineStart: `${sr}1K`, lines(e) { let t = ""; for (let r = 0; r < e; r++) t += this.line + (r < e - 1 ? cD.up() : ""); return e && (t += cD.left), t; } }; qF.exports = { cursor: cD, scroll: JJ, erase: XJ, beep: GJ }; }); // ../node_modules/prompts/dist/util/clear.js var HF = E((kYe, VF) => { "use strict"; function YJ(e, t) { var r = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"]; if (!r) { if (Array.isArray(e) || (r = ZJ(e)) || t && e && typeof e.length == "number") { r && (e = r); var i = 0, n = /* @__PURE__ */ s(function() { }, "F"); return { s: n, n: /* @__PURE__ */ s(function() { return i >= e.length ? { done: !0 } : { done: !1, value: e[i++] }; }, "n"), e: /* @__PURE__ */ s(function(c) { throw c; }, "e"), f: n }; } throw new TypeError(`Invalid attempt to iterate non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`); } var a = !0, o = !1, u; return { s: /* @__PURE__ */ s(function() { r = r.call(e); }, "s"), n: /* @__PURE__ */ s(function() { var c = r.next(); return a = c.done, c; }, "n"), e: /* @__PURE__ */ s(function(c) { o = !0, u = c; }, "e"), f: /* @__PURE__ */ s(function() { try { !a && r.return != null && r.return(); } finally { if (o) throw u; } }, "f") }; } s(YJ, "_createForOfIteratorHelper"); function ZJ(e, t) { if (e) { if (typeof e == "string") return UF(e, t); var r = Object.prototype.toString.call(e).slice(8, -1); if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e); if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return UF(e, t); } } s(ZJ, "_unsupportedIterableToArray"); function UF(e, t) { (t == null || t > e.length) && (t = e.length); for (var r = 0, i = new Array(t); r < t; r++) i[r] = e[r]; return i; } s(UF, "_arrayLikeToArray"); var QJ = sh(), $F = ar(), WF = $F.erase, eX = $F.cursor, tX = /* @__PURE__ */ s((e) => [...QJ(e)].length, "width"); VF.exports = function(e, t) { if (!t) return WF.line + eX.to(0); let r = 0, i = e.split(/\r?\n/); var n = YJ(i), a; try { for (n.s(); !(a = n.n()).done; ) { let o = a.value; r += 1 + Math.floor(Math.max(tX(o) - 1, 0) / t); } } catch (o) { n.e(o); } finally { n.f(); } return WF.lines(r); }; }); // ../node_modules/prompts/dist/util/figures.js var fD = E((NYe, KF) => { "use strict"; var zc = { arrowUp: "\u2191", arrowDown: "\u2193", arrowLeft: "\u2190", arrowRight: "\u2192", radioOn: "\u25C9", radioOff: "\u25EF", tick: "\u2714", cross: "\u2716", ellipsis: "\u2026", pointerSmall: "\u203A", line: "\u2500", pointer: "\u276F" }, rX = { arrowUp: zc.arrowUp, arrowDown: zc.arrowDown, arrowLeft: zc.arrowLeft, arrowRight: zc.arrowRight, radioOn: "(*)", radioOff: "( )", tick: "\u221A", cross: "\xD7", ellipsis: "...", pointerSmall: "\xBB", line: "\u2500", pointer: ">" }, iX = process.platform === "win32" ? rX : zc; KF.exports = iX; }); // ../node_modules/prompts/dist/util/style.js var GF = E((MYe, zF) => { "use strict"; var Ku = nr(), bo = fD(), dD = Object.freeze({ password: { scale: 1, render: /* @__PURE__ */ s((e) => "*".repeat(e.length), "render") }, emoji: { scale: 2, render: /* @__PURE__ */ s((e) => "\u{1F603}".repeat(e.length), "render") }, invisible: { scale: 0, render: /* @__PURE__ */ s((e) => "", "render") }, default: { scale: 1, render: /* @__PURE__ */ s((e) => `${e}`, "render") } }), nX = /* @__PURE__ */ s((e) => dD[e] || dD.default, "render"), Gc = Object.freeze({ aborted: Ku.red(bo.cross), done: Ku.green(bo.tick), exited: Ku.yellow(bo.cross), default: Ku.cyan("?") }), sX = /* @__PURE__ */ s((e, t, r) => t ? Gc.aborted : r ? Gc.exited : e ? Gc.done : Gc.default, "symbol"), aX = /* @__PURE__ */ s((e) => Ku. gray(e ? bo.ellipsis : bo.pointerSmall), "delimiter"), oX = /* @__PURE__ */ s((e, t) => Ku.gray(e ? t ? bo.pointerSmall : "+" : bo.line), "\ item"); zF.exports = { styles: dD, render: nX, symbols: Gc, symbol: sX, delimiter: aX, item: oX }; }); // ../node_modules/prompts/dist/util/lines.js var XF = E((jYe, JF) => { "use strict"; var uX = sh(); JF.exports = function(e, t) { let r = String(uX(e) || "").split(/\r?\n/); return t ? r.map((i) => Math.ceil(i.length / t)).reduce((i, n) => i + n) : r.length; }; }); // ../node_modules/prompts/dist/util/wrap.js var ZF = E((LYe, YF) => { "use strict"; YF.exports = (e, t = {}) => { let r = Number.isSafeInteger(parseInt(t.margin)) ? new Array(parseInt(t.margin)).fill(" ").join("") : t.margin || "", i = t.width; return (e || "").split(/\r?\n/g).map((n) => n.split(/\s+/g).reduce((a, o) => (o.length + r.length >= i || a[a.length - 1].length + o.length + 1 < i ? a[a.length - 1] += ` ${o}` : a.push(`${r}${o}`), a), [r]).join(` `)).join(` `); }; }); // ../node_modules/prompts/dist/util/entriesToDisplay.js var eI = E((qYe, QF) => { "use strict"; QF.exports = (e, t, r) => { r = r || t; let i = Math.min(t - r, e - Math.floor(r / 2)); i < 0 && (i = 0); let n = Math.min(i + r, t); return { startIndex: i, endIndex: n }; }; }); // ../node_modules/prompts/dist/util/index.js var Dn = E((UYe, tI) => { "use strict"; tI.exports = { action: jF(), clear: HF(), style: GF(), strip: sh(), figures: fD(), lines: XF(), wrap: ZF(), entriesToDisplay: eI() }; }); // ../node_modules/prompts/dist/elements/prompt.js var gs = E((WYe, nI) => { "use strict"; var rI = require("readline"), lX = Dn(), cX = lX.action, fX = require("events"), iI = ar(), dX = iI.beep, pX = iI.cursor, hX = nr(), pD = class extends fX { static { s(this, "Prompt"); } constructor(t = {}) { super(), this.firstRender = !0, this.in = t.stdin || process.stdin, this.out = t.stdout || process.stdout, this.onRender = (t.onRender || (() => { })).bind(this); let r = rI.createInterface({ input: this.in, escapeCodeTimeout: 50 }); rI.emitKeypressEvents(this.in, r), this.in.isTTY && this.in.setRawMode(!0); let i = ["SelectPrompt", "MultiselectPrompt"].indexOf(this.constructor.name) > -1, n = /* @__PURE__ */ s((a, o) => { let u = cX(o, i); u === !1 ? this._ && this._(a, o) : typeof this[u] == "function" ? this[u](o) : this.bell(); }, "keypress"); this.close = () => { this.out.write(pX.show), this.in.removeListener("keypress", n), this.in.isTTY && this.in.setRawMode(!1), r.close(), this.emit(this.aborted ? "abort" : this.exited ? "exit" : "submit", this.value), this.closed = !0; }, this.in.on("keypress", n); } fire() { this.emit("state", { value: this.value, aborted: !!this.aborted, exited: !!this.exited }); } bell() { this.out.write(dX); } render() { this.onRender(hX), this.firstRender && (this.firstRender = !1); } }; nI.exports = pD; }); // ../node_modules/prompts/dist/elements/text.js var lI = E((VYe, uI) => { "use strict"; function sI(e, t, r, i, n, a, o) { try { var u = e[a](o), l = u.value; } catch (c) { r(c); return; } u.done ? t(l) : Promise.resolve(l).then(i, n); } s(sI, "asyncGeneratorStep"); function aI(e) { return function() { var t = this, r = arguments; return new Promise(function(i, n) { var a = e.apply(t, r); function o(l) { sI(a, i, n, o, u, "next", l); } s(o, "_next"); function u(l) { sI(a, i, n, o, u, "throw", l); } s(u, "_throw"), o(void 0); }); }; } s(aI, "_asyncToGenerator"); var ah = nr(), mX = gs(), oI = ar(), yX = oI.erase, Jc = oI.cursor, oh = Dn(), hD = oh.style, mD = oh.clear, gX = oh.lines, bX = oh.figures, yD = class extends mX { static { s(this, "TextPrompt"); } constructor(t = {}) { super(t), this.transform = hD.render(t.style), this.scale = this.transform.scale, this.msg = t.message, this.initial = t.initial || "", this.validator = t.validate || (() => !0), this.value = "", this.errorMsg = t.error || "Please Enter A Valid Value", this.cursor = +!!this. initial, this.cursorOffset = 0, this.clear = mD("", this.out.columns), this.render(); } set value(t) { !t && this.initial ? (this.placeholder = !0, this.rendered = ah.gray(this.transform.render(this.initial))) : (this.placeholder = !1, this. rendered = this.transform.render(t)), this._value = t, this.fire(); } get value() { return this._value; } reset() { this.value = "", this.cursor = +!!this.initial, this.cursorOffset = 0, this.fire(), this.render(); } exit() { this.abort(); } abort() { this.value = this.value || this.initial, this.done = this.aborted = !0, this.error = !1, this.red = !1, this.fire(), this.render(), this. out.write(` `), this.close(); } validate() { var t = this; return aI(function* () { let r = yield t.validator(t.value); typeof r == "string" && (t.errorMsg = r, r = !1), t.error = !r; })(); } submit() { var t = this; return aI(function* () { if (t.value = t.value || t.initial, t.cursorOffset = 0, t.cursor = t.rendered.length, yield t.validate(), t.error) { t.red = !0, t.fire(), t.render(); return; } t.done = !0, t.aborted = !1, t.fire(), t.render(), t.out.write(` `), t.close(); })(); } next() { if (!this.placeholder) return this.bell(); this.value = this.initial, this.cursor = this.rendered.length, this.fire(), this.render(); } moveCursor(t) { this.placeholder || (this.cursor = this.cursor + t, this.cursorOffset += t); } _(t, r) { let i = this.value.slice(0, this.cursor), n = this.value.slice(this.cursor); this.value = `${i}${t}${n}`, this.red = !1, this.cursor = this.placeholder ? 0 : i.length + 1, this.render(); } delete() { if (this.isCursorAtStart()) return this.bell(); let t = this.value.slice(0, this.cursor - 1), r = this.value.slice(this.cursor); this.value = `${t}${r}`, this.red = !1, this.isCursorAtStart() ? this.cursorOffset = 0 : (this.cursorOffset++, this.moveCursor(-1)), this. render(); } deleteForward() { if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell(); let t = this.value.slice(0, this.cursor), r = this.value.slice(this.cursor + 1); this.value = `${t}${r}`, this.red = !1, this.isCursorAtEnd() ? this.cursorOffset = 0 : this.cursorOffset++, this.render(); } first() { this.cursor = 0, this.render(); } last() { this.cursor = this.value.length, this.render(); } left() { if (this.cursor <= 0 || this.placeholder) return this.bell(); this.moveCursor(-1), this.render(); } right() { if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell(); this.moveCursor(1), this.render(); } isCursorAtStart() { return this.cursor === 0 || this.placeholder && this.cursor === 1; } isCursorAtEnd() { return this.cursor === this.rendered.length || this.placeholder && this.cursor === this.rendered.length + 1; } render() { this.closed || (this.firstRender || (this.outputError && this.out.write(Jc.down(gX(this.outputError, this.out.columns) - 1) + mD(this. outputError, this.out.columns)), this.out.write(mD(this.outputText, this.out.columns))), super.render(), this.outputError = "", this.outputText = [hD.symbol(this.done, this.aborted), ah.bold(this.msg), hD.delimiter(this.done), this.red ? ah.red(this.rendered) : this.rendered].join( " "), this.error && (this.outputError += this.errorMsg.split(` `).reduce((t, r, i) => t + ` ${i ? " " : bX.pointerSmall} ${ah.red().italic(r)}`, "")), this.out.write(yX.line + Jc.to(0) + this.outputText + Jc.save + this.outputError + Jc.restore + Jc.move(this.cursorOffset, 0))); } }; uI.exports = yD; }); // ../node_modules/prompts/dist/elements/select.js var pI = E((KYe, dI) => { "use strict"; var bs = nr(), DX = gs(), Xc = Dn(), cI = Xc.style, fI = Xc.clear, uh = Xc.figures, vX = Xc.wrap, EX = Xc.entriesToDisplay, xX = ar(), SX = xX. cursor, gD = class extends DX { static { s(this, "SelectPrompt"); } constructor(t = {}) { super(t), this.msg = t.message, this.hint = t.hint || "- Use arrow-keys. Return to submit.", this.warn = t.warn || "- This option is d\ isabled", this.cursor = t.initial || 0, this.choices = t.choices.map((r, i) => (typeof r == "string" && (r = { title: r, value: i }), { title: r && (r.title || r.value || r), value: r && (r.value === void 0 ? i : r.value), description: r && r.description, selected: r && r.selected, disabled: r && r.disabled })), this.optionsPerPage = t.optionsPerPage || 10, this.value = (this.choices[this.cursor] || {}).value, this.clear = fI("", this.out. columns), this.render(); } moveCursor(t) { this.cursor = t, this.value = this.choices[t].value, this.fire(); } reset() { this.moveCursor(0), this.fire(), this.render(); } exit() { this.abort(); } abort() { this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(` `), this.close(); } submit() { this.selection.disabled ? this.bell() : (this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(` `), this.close()); } first() { this.moveCursor(0), this.render(); } last() { this.moveCursor(this.choices.length - 1), this.render(); } up() { this.cursor === 0 ? this.moveCursor(this.choices.length - 1) : this.moveCursor(this.cursor - 1), this.render(); } down() { this.cursor === this.choices.length - 1 ? this.moveCursor(0) : this.moveCursor(this.cursor + 1), this.render(); } next() { this.moveCursor((this.cursor + 1) % this.choices.length), this.render(); } _(t, r) { if (t === " ") return this.submit(); } get selection() { return this.choices[this.cursor]; } render() { if (this.closed) return; this.firstRender ? this.out.write(SX.hide) : this.out.write(fI(this.outputText, this.out.columns)), super.render(); let t = EX(this.cursor, this.choices.length, this.optionsPerPage), r = t.startIndex, i = t.endIndex; if (this.outputText = [cI.symbol(this.done, this.aborted), bs.bold(this.msg), cI.delimiter(!1), this.done ? this.selection.title : this. selection.disabled ? bs.yellow(this.warn) : bs.gray(this.hint)].join(" "), !this.done) { this.outputText += ` `; for (let n = r; n < i; n++) { let a, o, u = "", l = this.choices[n]; n === r && r > 0 ? o = uh.arrowUp : n === i - 1 && i < this.choices.length ? o = uh.arrowDown : o = " ", l.disabled ? (a = this.cursor === n ? bs.gray().underline(l.title) : bs.strikethrough().gray(l.title), o = (this.cursor === n ? bs.bold().gray(uh.pointer) + " " : "\ ") + o) : (a = this.cursor === n ? bs.cyan().underline(l.title) : l.title, o = (this.cursor === n ? bs.cyan(uh.pointer) + " " : " ") + o, l.description && this.cursor === n && (u = ` - ${l.description}`, (o.length + a.length + u.length >= this.out.columns || l.description. split(/\r?\n/).length > 1) && (u = ` ` + vX(l.description, { margin: 3, width: this.out.columns })))), this.outputText += `${o} ${a}${bs.gray(u)} `; } } this.out.write(this.outputText); } }; dI.exports = gD; }); // ../node_modules/prompts/dist/elements/toggle.js var DI = E((GYe, bI) => { "use strict"; var lh = nr(), TX = gs(), yI = Dn(), hI = yI.style, CX = yI.clear, gI = ar(), mI = gI.cursor, wX = gI.erase, bD = class extends TX { static { s(this, "TogglePrompt"); } constructor(t = {}) { super(t), this.msg = t.message, this.value = !!t.initial, this.active = t.active || "on", this.inactive = t.inactive || "off", this.initialValue = this.value, this.render(); } reset() { this.value = this.initialValue, this.fire(), this.render(); } exit() { this.abort(); } abort() { this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(` `), this.close(); } submit() { this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(` `), this.close(); } deactivate() { if (this.value === !1) return this.bell(); this.value = !1, this.render(); } activate() { if (this.value === !0) return this.bell(); this.value = !0, this.render(); } delete() { this.deactivate(); } left() { this.deactivate(); } right() { this.activate(); } down() { this.deactivate(); } up() { this.activate(); } next() { this.value = !this.value, this.fire(), this.render(); } _(t, r) { if (t === " ") this.value = !this.value; else if (t === "1") this.value = !0; else if (t === "0") this.value = !1; else return this.bell(); this.render(); } render() { this.closed || (this.firstRender ? this.out.write(mI.hide) : this.out.write(CX(this.outputText, this.out.columns)), super.render(), this. outputText = [hI.symbol(this.done, this.aborted), lh.bold(this.msg), hI.delimiter(this.done), this.value ? this.inactive : lh.cyan().underline( this.inactive), lh.gray("/"), this.value ? lh.cyan().underline(this.active) : this.active].join(" "), this.out.write(wX.line + mI.to(0) + this.outputText)); } }; bI.exports = bD; }); // ../node_modules/prompts/dist/dateparts/datepart.js var jn = E((XYe, vI) => { "use strict"; var DD = class e { static { s(this, "DatePart"); } constructor({ token: t, date: r, parts: i, locales: n }) { this.token = t, this.date = r || /* @__PURE__ */ new Date(), this.parts = i || [this], this.locales = n || {}; } up() { } down() { } next() { let t = this.parts.indexOf(this); return this.parts.find((r, i) => i > t && r instanceof e); } setTo(t) { } prev() { let t = [].concat(this.parts).reverse(), r = t.indexOf(this); return t.find((i, n) => n > r && i instanceof e); } toString() { return String(this.date); } }; vI.exports = DD; }); // ../node_modules/prompts/dist/dateparts/meridiem.js var xI = E((ZYe, EI) => { "use strict"; var AX = jn(), vD = class extends AX { static { s(this, "Meridiem"); } constructor(t = {}) { super(t); } up() { this.date.setHours((this.date.getHours() + 12) % 24); } down() { this.up(); } toString() { let t = this.date.getHours() > 12 ? "pm" : "am"; return /\A/.test(this.token) ? t.toUpperCase() : t; } }; EI.exports = vD; }); // ../node_modules/prompts/dist/dateparts/day.js var TI = E((eZe, SI) => { "use strict"; var _X = jn(), PX = /* @__PURE__ */ s((e) => (e = e % 10, e === 1 ? "st" : e === 2 ? "nd" : e === 3 ? "rd" : "th"), "pos"), ED = class extends _X { static { s(this, "Day"); } constructor(t = {}) { super(t); } up() { this.date.setDate(this.date.getDate() + 1); } down() { this.date.setDate(this.date.getDate() - 1); } setTo(t) { this.date.setDate(parseInt(t.substr(-2))); } toString() { let t = this.date.getDate(), r = this.date.getDay(); return this.token === "DD" ? String(t).padStart(2, "0") : this.token === "Do" ? t + PX(t) : this.token === "d" ? r + 1 : this.token === "ddd" ? this.locales.weekdaysShort[r] : this.token === "dddd" ? this.locales.weekdays[r] : t; } }; SI.exports = ED; }); // ../node_modules/prompts/dist/dateparts/hours.js var wI = E((rZe, CI) => { "use strict"; var FX = jn(), xD = class extends FX { static { s(this, "Hours"); } constructor(t = {}) { super(t); } up() { this.date.setHours(this.date.getHours() + 1); } down() { this.date.setHours(this.date.getHours() - 1); } setTo(t) { this.date.setHours(parseInt(t.substr(-2))); } toString() { let t = this.date.getHours(); return /h/.test(this.token) && (t = t % 12 || 12), this.token.length > 1 ? String(t).padStart(2, "0") : t; } }; CI.exports = xD; }); // ../node_modules/prompts/dist/dateparts/milliseconds.js var _I = E((nZe, AI) => { "use strict"; var IX = jn(), SD = class extends IX { static { s(this, "Milliseconds"); } constructor(t = {}) { super(t); } up() { this.date.setMilliseconds(this.date.getMilliseconds() + 1); } down() { this.date.setMilliseconds(this.date.getMilliseconds() - 1); } setTo(t) { this.date.setMilliseconds(parseInt(t.substr(-this.token.length))); } toString() { return String(this.date.getMilliseconds()).padStart(4, "0").substr(0, this.token.length); } }; AI.exports = SD; }); // ../node_modules/prompts/dist/dateparts/minutes.js var FI = E((aZe, PI) => { "use strict"; var OX = jn(), TD = class extends OX { static { s(this, "Minutes"); } constructor(t = {}) { super(t); } up() { this.date.setMinutes(this.date.getMinutes() + 1); } down() { this.date.setMinutes(this.date.getMinutes() - 1); } setTo(t) { this.date.setMinutes(parseInt(t.substr(-2))); } toString() { let t = this.date.getMinutes(); return this.token.length > 1 ? String(t).padStart(2, "0") : t; } }; PI.exports = TD; }); // ../node_modules/prompts/dist/dateparts/month.js var OI = E((uZe, II) => { "use strict"; var kX = jn(), CD = class extends kX { static { s(this, "Month"); } constructor(t = {}) { super(t); } up() { this.date.setMonth(this.date.getMonth() + 1); } down() { this.date.setMonth(this.date.getMonth() - 1); } setTo(t) { t = parseInt(t.substr(-2)) - 1, this.date.setMonth(t < 0 ? 0 : t); } toString() { let t = this.date.getMonth(), r = this.token.length; return r === 2 ? String(t + 1).padStart(2, "0") : r === 3 ? this.locales.monthsShort[t] : r === 4 ? this.locales.months[t] : String(t + 1); } }; II.exports = CD; }); // ../node_modules/prompts/dist/dateparts/seconds.js var BI = E((cZe, kI) => { "use strict"; var BX = jn(), wD = class extends BX { static { s(this, "Seconds"); } constructor(t = {}) { super(t); } up() { this.date.setSeconds(this.date.getSeconds() + 1); } down() { this.date.setSeconds(this.date.getSeconds() - 1); } setTo(t) { this.date.setSeconds(parseInt(t.substr(-2))); } toString() { let t = this.date.getSeconds(); return this.token.length > 1 ? String(t).padStart(2, "0") : t; } }; kI.exports = wD; }); // ../node_modules/prompts/dist/dateparts/year.js var MI = E((dZe, NI) => { "use strict"; var NX = jn(), AD = class extends NX { static { s(this, "Year"); } constructor(t = {}) { super(t); } up() { this.date.setFullYear(this.date.getFullYear() + 1); } down() { this.date.setFullYear(this.date.getFullYear() - 1); } setTo(t) { this.date.setFullYear(t.substr(-4)); } toString() { let t = String(this.date.getFullYear()).padStart(4, "0"); return this.token.length === 2 ? t.substr(-2) : t; } }; NI.exports = AD; }); // ../node_modules/prompts/dist/dateparts/index.js var jI = E((hZe, RI) => { "use strict"; RI.exports = { DatePart: jn(), Meridiem: xI(), Day: TI(), Hours: wI(), Milliseconds: _I(), Minutes: FI(), Month: OI(), Seconds: BI(), Year: MI() }; }); // ../node_modules/prompts/dist/elements/date.js var GI = E((mZe, zI) => { "use strict"; function LI(e, t, r, i, n, a, o) { try { var u = e[a](o), l = u.value; } catch (c) { r(c); return; } u.done ? t(l) : Promise.resolve(l).then(i, n); } s(LI, "asyncGeneratorStep"); function qI(e) { return function() { var t = this, r = arguments; return new Promise(function(i, n) { var a = e.apply(t, r); function o(l) { LI(a, i, n, o, u, "next", l); } s(o, "_next"); function u(l) { LI(a, i, n, o, u, "throw", l); } s(u, "_throw"), o(void 0); }); }; } s(qI, "_asyncToGenerator"); var _D = nr(), MX = gs(), FD = Dn(), UI = FD.style, WI = FD.clear, RX = FD.figures, KI = ar(), jX = KI.erase, $I = KI.cursor, Ds = jI(), VI = Ds. DatePart, LX = Ds.Meridiem, qX = Ds.Day, UX = Ds.Hours, WX = Ds.Milliseconds, $X = Ds.Minutes, VX = Ds.Month, HX = Ds.Seconds, KX = Ds.Year, zX = /\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g, HI = { 1: ({ token: e }) => e.replace(/\\(.)/g, "$1"), 2: (e) => new qX(e), // Day // TODO 3: (e) => new VX(e), // Month 4: (e) => new KX(e), // Year 5: (e) => new LX(e), // AM/PM // TODO (special) 6: (e) => new UX(e), // Hours 7: (e) => new $X(e), // Minutes 8: (e) => new HX(e), // Seconds 9: (e) => new WX(e) // Fractional seconds }, GX = { months: "January,February,March,April,May,June,July,August,September,October,November,December".split(","), monthsShort: "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","), weekdays: "Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","), weekdaysShort: "Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",") }, PD = class extends MX { static { s(this, "DatePrompt"); } constructor(t = {}) { super(t), this.msg = t.message, this.cursor = 0, this.typed = "", this.locales = Object.assign(GX, t.locales), this._date = t.initial || /* @__PURE__ */ new Date(), this.errorMsg = t.error || "Please Enter A Valid Value", this.validator = t.validate || (() => !0), this.mask = t.mask || "YYYY-MM-DD HH:mm:ss", this.clear = WI("", this.out.columns), this.render(); } get value() { return this.date; } get date() { return this._date; } set date(t) { t && this._date.setTime(t.getTime()); } set mask(t) { let r; for (this.parts = []; r = zX.exec(t); ) { let n = r.shift(), a = r.findIndex((o) => o != null); this.parts.push(a in HI ? HI[a]({ token: r[a] || n, date: this.date, parts: this.parts, locales: this.locales }) : r[a] || n); } let i = this.parts.reduce((n, a) => (typeof a == "string" && typeof n[n.length - 1] == "string" ? n[n.length - 1] += a : n.push(a), n), []); this.parts.splice(0), this.parts.push(...i), this.reset(); } moveCursor(t) { this.typed = "", this.cursor = t, this.fire(); } reset() { this.moveCursor(this.parts.findIndex((t) => t instanceof VI)), this.fire(), this.render(); } exit() { this.abort(); } abort() { this.done = this.aborted = !0, this.error = !1, this.fire(), this.render(), this.out.write(` `), this.close(); } validate() { var t = this; return qI(function* () { let r = yield t.validator(t.value); typeof r == "string" && (t.errorMsg = r, r = !1), t.error = !r; })(); } submit() { var t = this; return qI(function* () { if (yield t.validate(), t.error) { t.color = "red", t.fire(), t.render(); return; } t.done = !0, t.aborted = !1, t.fire(), t.render(), t.out.write(` `), t.close(); })(); } up() { this.typed = "", this.parts[this.cursor].up(), this.render(); } down() { this.typed = "", this.parts[this.cursor].down(), this.render(); } left() { let t = this.parts[this.cursor].prev(); if (t == null) return this.bell(); this.moveCursor(this.parts.indexOf(t)), this.render(); } right() { let t = this.parts[this.cursor].next(); if (t == null) return this.bell(); this.moveCursor(this.parts.indexOf(t)), this.render(); } next() { let t = this.parts[this.cursor].next(); this.moveCursor(t ? this.parts.indexOf(t) : this.parts.findIndex((r) => r instanceof VI)), this.render(); } _(t) { /\d/.test(t) && (this.typed += t, this.parts[this.cursor].setTo(this.typed), this.render()); } render() { this.closed || (this.firstRender ? this.out.write($I.hide) : this.out.write(WI(this.outputText, this.out.columns)), super.render(), this. outputText = [UI.symbol(this.done, this.aborted), _D.bold(this.msg), UI.delimiter(!1), this.parts.reduce((t, r, i) => t.concat(i === this. cursor && !this.done ? _D.cyan().underline(r.toString()) : r), []).join("")].join(" "), this.error && (this.outputText += this.errorMsg. split(` `).reduce((t, r, i) => t + ` ${i ? " " : RX.pointerSmall} ${_D.red().italic(r)}`, "")), this.out.write(jX.line + $I.to(0) + this.outputText)); } }; zI.exports = PD; }); // ../node_modules/prompts/dist/elements/number.js var tO = E((gZe, eO) => { "use strict"; function JI(e, t, r, i, n, a, o) { try { var u = e[a](o), l = u.value; } catch (c) { r(c); return; } u.done ? t(l) : Promise.resolve(l).then(i, n); } s(JI, "asyncGeneratorStep"); function XI(e) { return function() { var t = this, r = arguments; return new Promise(function(i, n) { var a = e.apply(t, r); function o(l) { JI(a, i, n, o, u, "next", l); } s(o, "_next"); function u(l) { JI(a, i, n, o, u, "throw", l); } s(u, "_throw"), o(void 0); }); }; } s(XI, "_asyncToGenerator"); var ch = nr(), JX = gs(), QI = ar(), fh = QI.cursor, XX = QI.erase, dh = Dn(), ID = dh.style, YX = dh.figures, YI = dh.clear, ZX = dh.lines, QX = /[0-9]/, OD = /* @__PURE__ */ s((e) => e !== void 0, "isDef"), ZI = /* @__PURE__ */ s((e, t) => { let r = Math.pow(10, t); return Math.round(e * r) / r; }, "round"), kD = class extends JX { static { s(this, "NumberPrompt"); } constructor(t = {}) { super(t), this.transform = ID.render(t.style), this.msg = t.message, this.initial = OD(t.initial) ? t.initial : "", this.float = !!t.float, this.round = t.round || 2, this.inc = t.increment || 1, this.min = OD(t.min) ? t.min : -1 / 0, this.max = OD(t.max) ? t.max : 1 / 0, this. errorMsg = t.error || "Please Enter A Valid Value", this.validator = t.validate || (() => !0), this.color = "cyan", this.value = "", this. typed = "", this.lastHit = 0, this.render(); } set value(t) { !t && t !== 0 ? (this.placeholder = !0, this.rendered = ch.gray(this.transform.render(`${this.initial}`)), this._value = "") : (this.placeholder = !1, this.rendered = this.transform.render(`${ZI(t, this.round)}`), this._value = ZI(t, this.round)), this.fire(); } get value() { return this._value; } parse(t) { return this.float ? parseFloat(t) : parseInt(t); } valid(t) { return t === "-" || t === "." && this.float || QX.test(t); } reset() { this.typed = "", this.value = "", this.fire(), this.render(); } exit() { this.abort(); } abort() { let t = this.value; this.value = t !== "" ? t : this.initial, this.done = this.aborted = !0, this.error = !1, this.fire(), this.render(), this.out.write(`\ `), this.close(); } validate() { var t = this; return XI(function* () { let r = yield t.validator(t.value); typeof r == "string" && (t.errorMsg = r, r = !1), t.error = !r; })(); } submit() { var t = this; return XI(function* () { if (yield t.validate(), t.error) { t.color = "red", t.fire(), t.render(); return; } let r = t.value; t.value = r !== "" ? r : t.initial, t.done = !0, t.aborted = !1, t.error = !1, t.fire(), t.render(), t.out.write(` `), t.close(); })(); } up() { if (this.typed = "", this.value === "" && (this.value = this.min - this.inc), this.value >= this.max) return this.bell(); this.value += this.inc, this.color = "cyan", this.fire(), this.render(); } down() { if (this.typed = "", this.value === "" && (this.value = this.min + this.inc), this.value <= this.min) return this.bell(); this.value -= this.inc, this.color = "cyan", this.fire(), this.render(); } delete() { let t = this.value.toString(); if (t.length === 0) return this.bell(); this.value = this.parse(t = t.slice(0, -1)) || "", this.value !== "" && this.value < this.min && (this.value = this.min), this.color = "cyan", this.fire(), this.render(); } next() { this.value = this.initial, this.fire(), this.render(); } _(t, r) { if (!this.valid(t)) return this.bell(); let i = Date.now(); if (i - this.lastHit > 1e3 && (this.typed = ""), this.typed += t, this.lastHit = i, this.color = "cyan", t === ".") return this.fire(); this.value = Math.min(this.parse(this.typed), this.max), this.value > this.max && (this.value = this.max), this.value < this.min && (this. value = this.min), this.fire(), this.render(); } render() { this.closed || (this.firstRender || (this.outputError && this.out.write(fh.down(ZX(this.outputError, this.out.columns) - 1) + YI(this. outputError, this.out.columns)), this.out.write(YI(this.outputText, this.out.columns))), super.render(), this.outputError = "", this.outputText = [ID.symbol(this.done, this.aborted), ch.bold(this.msg), ID.delimiter(this.done), !this.done || !this.done && !this.placeholder ? ch[this. color]().underline(this.rendered) : this.rendered].join(" "), this.error && (this.outputError += this.errorMsg.split(` `).reduce((t, r, i) => t + ` ${i ? " " : YX.pointerSmall} ${ch.red().italic(r)}`, "")), this.out.write(XX.line + fh.to(0) + this.outputText + fh.save + this.outputError + fh.restore)); } }; eO.exports = kD; }); // ../node_modules/prompts/dist/elements/multiselect.js var ND = E((DZe, nO) => { "use strict"; var Ln = nr(), eY = ar(), tY = eY.cursor, rY = gs(), Yc = Dn(), rO = Yc.clear, ya = Yc.figures, iO = Yc.style, iY = Yc.wrap, nY = Yc.entriesToDisplay, BD = class extends rY { static { s(this, "MultiselectPrompt"); } constructor(t = {}) { super(t), this.msg = t.message, this.cursor = t.cursor || 0, this.scrollIndex = t.cursor || 0, this.hint = t.hint || "", this.warn = t. warn || "- This option is disabled -", this.minSelected = t.min, this.showMinError = !1, this.maxChoices = t.max, this.instructions = t. instructions, this.optionsPerPage = t.optionsPerPage || 10, this.value = t.choices.map((r, i) => (typeof r == "string" && (r = { title: r, value: i }), { title: r && (r.title || r.value || r), description: r && r.description, value: r && (r.value === void 0 ? i : r.value), selected: r && r.selected, disabled: r && r.disabled })), this.clear = rO("", this.out.columns), t.overrideRender || this.render(); } reset() { this.value.map((t) => !t.selected), this.cursor = 0, this.fire(), this.render(); } selected() { return this.value.filter((t) => t.selected); } exit() { this.abort(); } abort() { this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(` `), this.close(); } submit() { let t = this.value.filter((r) => r.selected); this.minSelected && t.length < this.minSelected ? (this.showMinError = !0, this.render()) : (this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(` `), this.close()); } first() { this.cursor = 0, this.render(); } last() { this.cursor = this.value.length - 1, this.render(); } next() { this.cursor = (this.cursor + 1) % this.value.length, this.render(); } up() { this.cursor === 0 ? this.cursor = this.value.length - 1 : this.cursor--, this.render(); } down() { this.cursor === this.value.length - 1 ? this.cursor = 0 : this.cursor++, this.render(); } left() { this.value[this.cursor].selected = !1, this.render(); } right() { if (this.value.filter((t) => t.selected).length >= this.maxChoices) return this.bell(); this.value[this.cursor].selected = !0, this.render(); } handleSpaceToggle() { let t = this.value[this.cursor]; if (t.selected) t.selected = !1, this.render(); else { if (t.disabled || this.value.filter((r) => r.selected).length >= this.maxChoices) return this.bell(); t.selected = !0, this.render(); } } toggleAll() { if (this.maxChoices !== void 0 || this.value[this.cursor].disabled) return this.bell(); let t = !this.value[this.cursor].selected; this.value.filter((r) => !r.disabled).forEach((r) => r.selected = t), this.render(); } _(t, r) { if (t === " ") this.handleSpaceToggle(); else if (t === "a") this.toggleAll(); else return this.bell(); } renderInstructions() { return this.instructions === void 0 || this.instructions ? typeof this.instructions == "string" ? this.instructions : ` Instructions: ${ya.arrowUp}/${ya.arrowDown}: Highlight option ${ya.arrowLeft}/${ya.arrowRight}/[space]: Toggle selection ` + (this.maxChoices === void 0 ? ` a: Toggle all ` : "") + " enter/return: Complete answer" : ""; } renderOption(t, r, i, n) { let a = (r.selected ? Ln.green(ya.radioOn) : ya.radioOff) + " " + n + " ", o, u; return r.disabled ? o = t === i ? Ln.gray().underline(r.title) : Ln.strikethrough().gray(r.title) : (o = t === i ? Ln.cyan().underline( r.title) : r.title, t === i && r.description && (u = ` - ${r.description}`, (a.length + o.length + u.length >= this.out.columns || r.description. split(/\r?\n/).length > 1) && (u = ` ` + iY(r.description, { margin: a.length, width: this.out.columns })))), a + o + Ln.gray(u || ""); } // shared with autocompleteMultiselect paginateOptions(t) { if (t.length === 0) return Ln.red("No matches for this query."); let r = nY(this.cursor, t.length, this.optionsPerPage), i = r.startIndex, n = r.endIndex, a, o = []; for (let u = i; u < n; u++) u === i && i > 0 ? a = ya.arrowUp : u === n - 1 && n < t.length ? a = ya.arrowDown : a = " ", o.push(this.renderOption(this.cursor, t[u], u, a)); return ` ` + o.join(` `); } // shared with autocomleteMultiselect renderOptions(t) { return this.done ? "" : this.paginateOptions(t); } renderDoneOrInstructions() { if (this.done) return this.value.filter((r) => r.selected).map((r) => r.title).join(", "); let t = [Ln.gray(this.hint), this.renderInstructions()]; return this.value[this.cursor].disabled && t.push(Ln.yellow(this.warn)), t.join(" "); } render() { if (this.closed) return; this.firstRender && this.out.write(tY.hide), super.render(); let t = [iO.symbol(this.done, this.aborted), Ln.bold(this.msg), iO.delimiter(!1), this.renderDoneOrInstructions()].join(" "); this.showMinError && (t += Ln.red(`You must select a minimum of ${this.minSelected} choices.`), this.showMinError = !1), t += this.renderOptions( this.value), this.out.write(this.clear + t), this.clear = rO(t, this.out.columns); } }; nO.exports = BD; }); // ../node_modules/prompts/dist/elements/autocomplete.js var fO = E((EZe, cO) => { "use strict"; function sO(e, t, r, i, n, a, o) { try { var u = e[a](o), l = u.value; } catch (c) { r(c); return; } u.done ? t(l) : Promise.resolve(l).then(i, n); } s(sO, "asyncGeneratorStep"); function sY(e) { return function() { var t = this, r = arguments; return new Promise(function(i, n) { var a = e.apply(t, r); function o(l) { sO(a, i, n, o, u, "next", l); } s(o, "_next"); function u(l) { sO(a, i, n, o, u, "throw", l); } s(u, "_throw"), o(void 0); }); }; } s(sY, "_asyncToGenerator"); var Zc = nr(), aY = gs(), lO = ar(), oY = lO.erase, aO = lO.cursor, Qc = Dn(), MD = Qc.style, oO = Qc.clear, RD = Qc.figures, uY = Qc.wrap, lY = Qc.entriesToDisplay, uO = /* @__PURE__ */ s((e, t) => e[t] && (e[t].value || e[t].title || e[t]), "getVal"), cY = /* @__PURE__ */ s((e, t) => e[t] && (e[t].title || e[t].value || e[t]), "getTitle"), fY = /* @__PURE__ */ s((e, t) => { let r = e.findIndex((i) => i.value === t || i.title === t); return r > -1 ? r : void 0; }, "getIndex"), jD = class extends aY { static { s(this, "AutocompletePrompt"); } constructor(t = {}) { super(t), this.msg = t.message, this.suggest = t.suggest, this.choices = t.choices, this.initial = typeof t.initial == "number" ? t.initial : fY(t.choices, t.initial), this.select = this.initial || t.cursor || 0, this.i18n = { noMatches: t.noMatches || "no matches found" }, this.fallback = t.fallback || this.initial, this.clearFirst = t.clearFirst || !1, this.suggestions = [], this.input = "", this.limit = t.limit || 10, this.cursor = 0, this.transform = MD.render(t.style), this.scale = this.transform.scale, this.render = this.render.bind( this), this.complete = this.complete.bind(this), this.clear = oO("", this.out.columns), this.complete(this.render), this.render(); } set fallback(t) { this._fb = Number.isSafeInteger(parseInt(t)) ? parseInt(t) : t; } get fallback() { let t; return typeof this._fb == "number" ? t = this.choices[this._fb] : typeof this._fb == "string" && (t = { title: this._fb }), t || this._fb || { title: this.i18n.noMatches }; } moveSelect(t) { this.select = t, this.suggestions.length > 0 ? this.value = uO(this.suggestions, t) : this.value = this.fallback.value, this.fire(); } complete(t) { var r = this; return sY(function* () { let i = r.completing = r.suggest(r.input, r.choices), n = yield i; if (r.completing !== i) return;