@zaly/tui 0.1.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/README.md +3 -0
  2. package/dist/{actions-B0yyZ-Ww.d.mts → actions-CH6ndYvf.d.mts} +4 -4
  3. package/dist/{actions-B0yyZ-Ww.d.mts.map → actions-CH6ndYvf.d.mts.map} +1 -1
  4. package/dist/{ansi-CxgRPLA2.mjs → ansi-oiRnTQr9.mjs} +11 -2
  5. package/dist/ansi-oiRnTQr9.mjs.map +1 -0
  6. package/dist/ansi.d.mts +2 -0
  7. package/dist/ansi.d.mts.map +1 -1
  8. package/dist/ansi.mjs +1 -1
  9. package/dist/{autocomplete-wgceuhLr.d.mts → autocomplete-ZmzqQZNq.d.mts} +4 -4
  10. package/dist/{autocomplete-wgceuhLr.d.mts.map → autocomplete-ZmzqQZNq.d.mts.map} +1 -1
  11. package/dist/{box-DToDoXlU.mjs → box-BOJcFW8f.mjs} +4 -4
  12. package/dist/{box-DToDoXlU.mjs.map → box-BOJcFW8f.mjs.map} +1 -1
  13. package/dist/{builder-BdYlK1Ew.mjs → builder-D8Sx5N8a.mjs} +3 -3
  14. package/dist/{builder-BdYlK1Ew.mjs.map → builder-D8Sx5N8a.mjs.map} +1 -1
  15. package/dist/{callbacks-DW8XKYKy.mjs → callbacks-CruJEvm8.mjs} +12 -4
  16. package/dist/{callbacks-DW8XKYKy.mjs.map → callbacks-CruJEvm8.mjs.map} +1 -1
  17. package/dist/client-C7iR8kp-.mjs +1 -0
  18. package/dist/{client-BWm6dNZF.mjs → client-DsNEilJG.mjs} +1 -3
  19. package/dist/client-DsNEilJG.mjs.map +1 -0
  20. package/dist/{clipboard-UEoX9sup.mjs → clipboard-wzJ1EVfy.mjs} +2 -2
  21. package/dist/{clipboard-UEoX9sup.mjs.map → clipboard-wzJ1EVfy.mjs.map} +1 -1
  22. package/dist/clipboard.mjs +1 -1
  23. package/dist/ctx-CM0YMy26.mjs +1 -0
  24. package/dist/{ctx-DBeFcZt6.mjs → ctx-D_rMOcp5.mjs} +2 -2
  25. package/dist/{ctx-DBeFcZt6.mjs.map → ctx-D_rMOcp5.mjs.map} +1 -1
  26. package/dist/{divider-qEj5prKE.mjs → divider-CiNpoiuP.mjs} +2 -2
  27. package/dist/{divider-qEj5prKE.mjs.map → divider-CiNpoiuP.mjs.map} +1 -1
  28. package/dist/{files-CdiDnwA_.d.mts → files-82Il_nUh.d.mts} +3 -3
  29. package/dist/{files-CdiDnwA_.d.mts.map → files-82Il_nUh.d.mts.map} +1 -1
  30. package/dist/{github-DC0XemKa.d.mts → github-yVfk9BE4.d.mts} +3 -3
  31. package/dist/{github-DC0XemKa.d.mts.map → github-yVfk9BE4.d.mts.map} +1 -1
  32. package/dist/{image-M--Bw4bs.mjs → image--PBiHfwV.mjs} +2 -2
  33. package/dist/{image-M--Bw4bs.mjs.map → image--PBiHfwV.mjs.map} +1 -1
  34. package/dist/{image-DdRDv7q6.d.mts → image-CO6YJj6F.d.mts} +2 -2
  35. package/dist/{image-DdRDv7q6.d.mts.map → image-CO6YJj6F.d.mts.map} +1 -1
  36. package/dist/image.d.mts +1 -1
  37. package/dist/index.d.mts +1 -1
  38. package/dist/index.mjs +6 -6
  39. package/dist/{input-BkE4EpBw.mjs → input-5ktO2fvO.mjs} +4 -4
  40. package/dist/{input-BkE4EpBw.mjs.map → input-5ktO2fvO.mjs.map} +1 -1
  41. package/dist/{input-C3kfYoEJ.d.mts → input-C8MEpAg6.d.mts} +2 -2
  42. package/dist/{input-C3kfYoEJ.d.mts.map → input-C8MEpAg6.d.mts.map} +1 -1
  43. package/dist/{inspect-Cli1beu8.mjs → inspect-CxtcQch-.mjs} +2 -2
  44. package/dist/{inspect-Cli1beu8.mjs.map → inspect-CxtcQch-.mjs.map} +1 -1
  45. package/dist/{log-96b1_J6G.mjs → log-D7PTmOzE.mjs} +8 -5
  46. package/dist/log-D7PTmOzE.mjs.map +1 -0
  47. package/dist/{logger-DwfXp8LF.mjs → logger-DXK8D8Vb.mjs} +3 -3
  48. package/dist/{logger-DwfXp8LF.mjs.map → logger-DXK8D8Vb.mjs.map} +1 -1
  49. package/dist/{markdown-CgRZBhIX.mjs → markdown-D6quhsm0.mjs} +10 -9
  50. package/dist/markdown-D6quhsm0.mjs.map +1 -0
  51. package/dist/markdown.d.mts +3 -1
  52. package/dist/markdown.d.mts.map +1 -1
  53. package/dist/markdown.mjs +1 -1
  54. package/dist/{overlay-CevDWgSF.mjs → overlay-6kh2gG4K.mjs} +2 -2
  55. package/dist/{overlay-CevDWgSF.mjs.map → overlay-6kh2gG4K.mjs.map} +1 -1
  56. package/dist/{picker-D9WrE3zF.mjs → picker-B3XS2HKe.mjs} +4 -4
  57. package/dist/{picker-D9WrE3zF.mjs.map → picker-B3XS2HKe.mjs.map} +1 -1
  58. package/dist/{picker-DsB6--GN.d.mts → picker-H_ubc2nk.d.mts} +5 -5
  59. package/dist/{picker-DsB6--GN.d.mts.map → picker-H_ubc2nk.d.mts.map} +1 -1
  60. package/dist/{queries-Dmd3IjSd.d.mts → queries-BqFMpQAf.d.mts} +3 -1
  61. package/dist/queries-BqFMpQAf.d.mts.map +1 -0
  62. package/dist/{render-Bp2N2i6J.mjs → render-bm-x85jl.mjs} +2 -2
  63. package/dist/{render-Bp2N2i6J.mjs.map → render-bm-x85jl.mjs.map} +1 -1
  64. package/dist/{renderer-B9sAMA10.mjs → renderer-Cc8-s72G.mjs} +9 -9
  65. package/dist/{renderer-B9sAMA10.mjs.map → renderer-Cc8-s72G.mjs.map} +1 -1
  66. package/dist/renderer-DJg8vAoQ.mjs +1 -0
  67. package/dist/{renderer-BYl2pbdx.mjs → renderer-D_n6LCWd.mjs} +2 -2
  68. package/dist/renderer-D_n6LCWd.mjs.map +1 -0
  69. package/dist/{select-BZCFXdjp.d.mts → select-BeP7rFkP.d.mts} +2 -2
  70. package/dist/{select-BZCFXdjp.d.mts.map → select-BeP7rFkP.d.mts.map} +1 -1
  71. package/dist/{select-CUmAFKJh.mjs → select-BlsSDBlV.mjs} +2 -2
  72. package/dist/{select-CUmAFKJh.mjs.map → select-BlsSDBlV.mjs.map} +1 -1
  73. package/dist/services/logger.d.mts +1 -1
  74. package/dist/services/logger.mjs +1 -1
  75. package/dist/services/notifier.d.mts +1 -1
  76. package/dist/services/notifier.mjs +2 -2
  77. package/dist/services/picker.d.mts +5 -5
  78. package/dist/services/picker.mjs +6 -6
  79. package/dist/services/prompt.d.mts +4 -4
  80. package/dist/services/prompt.mjs +5 -5
  81. package/dist/shiki/server.mjs +2 -2
  82. package/dist/{shiki-BAf9PdIc.mjs → shiki-CUJQssUJ.mjs} +2 -2
  83. package/dist/{shiki-BAf9PdIc.mjs.map → shiki-CUJQssUJ.mjs.map} +1 -1
  84. package/dist/{show-D5XNXgZf.mjs → show-BfIUw8A1.mjs} +2 -2
  85. package/dist/{show-D5XNXgZf.mjs.map → show-BfIUw8A1.mjs.map} +1 -1
  86. package/dist/{style-Cw_EuszU.mjs → style-DTwmlkfR.mjs} +2 -2
  87. package/dist/{style-Cw_EuszU.mjs.map → style-DTwmlkfR.mjs.map} +1 -1
  88. package/dist/style.d.mts +1 -1
  89. package/dist/style.mjs +2 -2
  90. package/dist/{text-BArwVVkg.mjs → text-BKLHPMsQ.mjs} +3 -3
  91. package/dist/{text-BArwVVkg.mjs.map → text-BKLHPMsQ.mjs.map} +1 -1
  92. package/dist/{text-4arC3odI.mjs → text-BLQXIh6Z.mjs} +3 -3
  93. package/dist/text-BLQXIh6Z.mjs.map +1 -0
  94. package/dist/{text-DdkJXgoC.d.mts → text-BnlU1Q9y.d.mts} +2 -2
  95. package/dist/{text-DdkJXgoC.d.mts.map → text-BnlU1Q9y.d.mts.map} +1 -1
  96. package/dist/text.d.mts +1 -1
  97. package/dist/text.mjs +1 -1
  98. package/dist/{theme-B8hb1lPU.mjs → theme-CG51x7aG.mjs} +2 -2
  99. package/dist/{theme-B8hb1lPU.mjs.map → theme-CG51x7aG.mjs.map} +1 -1
  100. package/dist/{tree-D6NvMQx8.mjs → tree-4aaQKFtF.mjs} +2 -2
  101. package/dist/{tree-D6NvMQx8.mjs.map → tree-4aaQKFtF.mjs.map} +1 -1
  102. package/dist/{tree-Berzv8Rz.d.mts → tree-DNAE_C7w.d.mts} +3 -3
  103. package/dist/{tree-Berzv8Rz.d.mts.map → tree-DNAE_C7w.d.mts.map} +1 -1
  104. package/dist/{widget-sPJaKVU2.d.mts → widget-CHWHCg1j.d.mts} +2 -2
  105. package/dist/{widget-sPJaKVU2.d.mts.map → widget-CHWHCg1j.d.mts.map} +1 -1
  106. package/dist/widgets/autocomplete.d.mts +1 -1
  107. package/dist/widgets/autocomplete.mjs +3 -3
  108. package/dist/widgets/box.d.mts +1 -1
  109. package/dist/widgets/box.mjs +1 -1
  110. package/dist/widgets/code.d.mts +2 -2
  111. package/dist/widgets/code.mjs +7 -7
  112. package/dist/widgets/completions/actions.d.mts +1 -1
  113. package/dist/widgets/completions/files.d.mts +1 -1
  114. package/dist/widgets/completions/github.d.mts +1 -1
  115. package/dist/widgets/completions/index.d.mts +3 -3
  116. package/dist/widgets/diff.d.mts +2 -2
  117. package/dist/widgets/diff.d.mts.map +1 -1
  118. package/dist/widgets/diff.mjs +7 -7
  119. package/dist/widgets/diff.mjs.map +1 -1
  120. package/dist/widgets/divider.d.mts +1 -1
  121. package/dist/widgets/divider.mjs +1 -1
  122. package/dist/widgets/image.d.mts +1 -1
  123. package/dist/widgets/image.mjs +2 -2
  124. package/dist/widgets/input.d.mts +1 -1
  125. package/dist/widgets/input.mjs +1 -1
  126. package/dist/widgets/log.d.mts +1 -1
  127. package/dist/widgets/log.mjs +1 -1
  128. package/dist/widgets/markdown.d.mts +6 -4
  129. package/dist/widgets/markdown.d.mts.map +1 -1
  130. package/dist/widgets/markdown.mjs +1 -1
  131. package/dist/widgets/overlay.d.mts +1 -1
  132. package/dist/widgets/overlay.mjs +1 -1
  133. package/dist/widgets/picker.d.mts +1 -1
  134. package/dist/widgets/picker.mjs +1 -1
  135. package/dist/widgets/progress.d.mts +1 -1
  136. package/dist/widgets/progress.mjs +1 -1
  137. package/dist/widgets/select.d.mts +1 -1
  138. package/dist/widgets/select.mjs +1 -1
  139. package/dist/widgets/show.d.mts +1 -1
  140. package/dist/widgets/show.mjs +1 -1
  141. package/dist/widgets/spinner.d.mts +1 -1
  142. package/dist/widgets/spinner.mjs +1 -1
  143. package/dist/widgets/text.d.mts +1 -1
  144. package/dist/widgets/text.mjs +1 -1
  145. package/dist/widgets/tree.d.mts +1 -1
  146. package/dist/widgets/tree.mjs +1 -1
  147. package/dist/widgets/widget.d.mts +1 -1
  148. package/package.json +6 -6
  149. package/dist/ansi-CxgRPLA2.mjs.map +0 -1
  150. package/dist/client-BWm6dNZF.mjs.map +0 -1
  151. package/dist/client-C69qWhMG.mjs +0 -1
  152. package/dist/ctx-CYEzzH-7.mjs +0 -1
  153. package/dist/log-96b1_J6G.mjs.map +0 -1
  154. package/dist/markdown-CgRZBhIX.mjs.map +0 -1
  155. package/dist/queries-Dmd3IjSd.d.mts.map +0 -1
  156. package/dist/renderer-BYl2pbdx.mjs.map +0 -1
  157. package/dist/renderer-Ctz0hv5o.mjs +0 -1
  158. package/dist/text-4arC3odI.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"queries-Dmd3IjSd.d.mts","names":["_$___core_state_ts0.Layout","_$__box_ts0.Box","_$__terminal_ts0.Terminal"],"sources":["../src/input/keys.ts","../src/input/decoder.ts","../src/input/actions.ts","../src/layout/size.ts","../src/core/reactive.ts","../src/core/state.ts","../src/layout/border.ts","../src/widgets/text.ts","../src/widgets/box.ts","../src/widgets/overlay.ts","../src/core/ctx.ts","../src/widgets/log.ts","../src/services/logger.ts","../src/renderer/terminal.ts","../src/renderer/frame.ts","../src/renderer/surface.ts","../src/renderer/overlay.ts","../src/renderer/selection.ts","../src/renderer/stream.ts","../src/renderer/ui.ts","../src/renderer/renderer.ts","../src/core/node.ts","../src/input/router.ts","../src/input/queries.ts"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"renderer-BYl2pbdx.mjs","names":[],"sources":["../src/markdown/renderer.ts"],"sourcesContent":["import type { RenderCtx } from \"../core/ctx.ts\"\nimport type { Node } from \"../core/node.ts\"\nimport type { Image } from \"../widgets/image.ts\"\nimport type { MdOptions, RenderMarkdown } from \"./types.ts\"\n\nexport type MarkdownOptions = MdOptions & {\n parent?: Node\n}\n\nexport type MarkdownCtx = RenderCtx & {\n images?: boolean\n highlight?: (code: string, lang?: string) => string\n}\n\nexport class MarkdownRenderer {\n #render?: RenderMarkdown\n #images = new Map<string, Image>()\n #parent?: Node\n #opts: MarkdownOptions\n\n constructor(opts: MarkdownOptions = {}) {\n this.#opts = opts\n this.#parent = opts.parent\n }\n\n async render(source: string, ctx: MarkdownCtx): Promise<string> {\n // oxlint-disable-next-line unicorn/no-await-expression-member\n this.#render ??= this.#opts.render ?? (await import(\"#md\")).renderMarkdown\n\n const [{ createCallbacks }, { createImageCallback }] = await Promise.all([\n import(\"./callbacks.ts\"),\n import(\"./image.ts\"),\n ])\n\n const callbacks = createCallbacks(ctx)\n\n // Image handling: the callback emits `<img id=N>` markers during\n // rendering; a post-processing resolver then renders the referenced\n // images concurrently and splices their rows back in. Keeps the\n // markdown callback surface synchronous while supporting async\n // image preparation.\n const image = createImageCallback({\n add: (child) => this.#parent?.add(child),\n images: this.#images,\n queries: ctx.images === false ? undefined : this.#parent?.ctx?.input.queries,\n remove: (child) => this.#parent?.remove(child) ?? child.unmount(),\n })\n\n if (ctx.images ?? true) callbacks.image = image.cb\n\n let rendered = this.#render(image.prepare(source), callbacks, this.#opts)\n rendered = await image.resolve(ctx, rendered)\n return this.normalizeEol(source, rendered)\n }\n\n /** Mirror the source's trailing newlines: the renderer adds its own\n /* padding after blocks (`\\n\\n` after paragraphs, etc.) which would\n /* leave stray blank rows. Normalizing to what the caller typed keeps\n /* single-line inputs compact and preserves explicit spacing when\n /* they asked for it. */\n normalizeEol(source: string, rendered: string): string {\n // Collapse multiple blank lines to a maximum of one\n rendered = rendered.replace(/\\n\\n+/g, \"\\n\\n\")\n // Trim leading blank lines\n rendered = rendered.replace(/^\\s*\\n/, \"\")\n const trailing = /\\n*$/.exec(source)?.[0] ?? \"\"\n return rendered.replace(/\\n+$/, trailing)\n }\n}\n"],"mappings":";AAcA,IAAa,mBAAb,MAA8B;CAC5B;CACA,0BAAU,IAAI,IAAmB;CACjC;CACA;CAEA,YAAY,OAAwB,CAAC,GAAG;EACtC,KAAK,QAAQ;EACb,KAAK,UAAU,KAAK;CACtB;CAEA,MAAM,OAAO,QAAgB,KAAmC;EAE9D,KAAK,YAAY,KAAK,MAAM,WAAW,MAAM,OAAO,OAAA,CAAQ;EAE5D,MAAM,CAAC,EAAE,mBAAmB,EAAE,yBAAyB,MAAM,QAAQ,IAAI,CACvE,OAAO,6BACP,OAAO,uBACT,CAAC;EAED,MAAM,YAAY,gBAAgB,GAAG;EAOrC,MAAM,QAAQ,oBAAoB;GAChC,MAAM,UAAU,KAAK,SAAS,IAAI,KAAK;GACvC,QAAQ,KAAK;GACb,SAAS,IAAI,WAAW,QAAQ,KAAA,IAAY,KAAK,SAAS,KAAK,MAAM;GACrE,SAAS,UAAU,KAAK,SAAS,OAAO,KAAK,KAAK,MAAM,QAAQ;EAClE,CAAC;EAED,IAAI,IAAI,UAAU,MAAM,UAAU,QAAQ,MAAM;EAEhD,IAAI,WAAW,KAAK,QAAQ,MAAM,QAAQ,MAAM,GAAG,WAAW,KAAK,KAAK;EACxE,WAAW,MAAM,MAAM,QAAQ,KAAK,QAAQ;EAC5C,OAAO,KAAK,aAAa,QAAQ,QAAQ;CAC3C;;;;;;CAOA,aAAa,QAAgB,UAA0B;EAErD,WAAW,SAAS,QAAQ,UAAU,MAAM;EAE5C,WAAW,SAAS,QAAQ,UAAU,EAAE;EACxC,MAAM,WAAW,OAAO,KAAK,MAAM,CAAC,GAAG,MAAM;EAC7C,OAAO,SAAS,QAAQ,QAAQ,QAAQ;CAC1C;AACF"}
@@ -1 +0,0 @@
1
- export { t as MarkdownRenderer } from "./renderer-BYl2pbdx.mjs";
@@ -1 +0,0 @@
1
- {"version":3,"file":"text-4arC3odI.mjs","names":[],"sources":["../src/layout/text.ts"],"sourcesContent":["import type { Layout } from \"../core/state.ts\"\nimport type { StyleBuilder } from \"../style/builder.ts\"\n\nimport { clamp } from \"@zaly/shared\"\nimport {\n hasAnsi,\n sliceAnsi,\n splitAnsi,\n stringWidth,\n stripAnsi,\n truncateAnsi,\n wrapAnsi,\n} from \"@zaly/shared/ansi\"\nimport { ansiBg, styleAnsi } from \"../style/ansi.ts\"\n\nexport type WrapMode = \"word\" | \"char\" | \"none\"\n\nconst ELLIPSIS = \"…\"\nconst TAB_WIDTH = 4\n\nexport function formatText(\n text: string,\n opts: {\n wrap?: WrapMode\n width: number\n style?: StyleBuilder\n /** When wrapping, preserve the indentation of the original text. */\n indent?: boolean\n /** When wrapping ANSI-styled text, pad wrapped fragments to `width`\n * using the background color active at the fragment's last cell.\n * Natural lines that already fit are left unchanged. */\n wrapBg?: boolean\n }\n): string[] {\n const mode = opts.wrap ?? \"word\"\n const lines = splitAnsi(expandTabs(text))\n const ret: string[] = []\n if (mode === \"none\") ret.push(...lines)\n else {\n for (const line of lines) {\n const sw = stringWidth(line)\n\n // Fast path for short lines that don't need wrapping\n if (sw <= opts.width) {\n ret.push(line)\n continue\n }\n\n const stripped = stripAnsi(line)\n\n // Long line that ends in (ansi) whitespace, so just strip\n if (stripped.slice(opts.width).trim() === \"\") {\n ret.push(sliceAnsi(line, 0, opts.width))\n continue\n }\n\n const indentWidth = opts.indent ? stringWidth(stripped.match(/^\\s*/)?.[0] ?? \"\") : 0\n const indent = indentWidth > 0 ? sliceAnsi(line, 0, indentWidth) : \"\"\n const bare = indent ? sliceAnsi(line, indentWidth) : line\n const wrapped = splitAnsi(wrapAnsi(bare, opts.width - indentWidth, { mode }))\n\n // * strip single leading space from wrapped lines after the first\n // * preserve indentation when enabled\n // * pad wrapped lines with bg color if padding is enabled and the line is short\n for (let r = 0; r < wrapped.length; r++) {\n let row = r > 0 && wrapped[r].startsWith(\" \") ? wrapped[r].slice(1) : wrapped[r]\n if (row === \"\" && r > 0 && r < wrapped.length - 1) continue\n if (indent) row = `${indent}${row}`\n if (opts.wrapBg) {\n const rowWidth = stringWidth(row)\n const bg = rowWidth > 0 ? ansiBg(row, rowWidth - 1) : undefined\n if (bg && rowWidth < opts.width) {\n row = `${row}${styleAnsi(\" \".repeat(opts.width - rowWidth), { bg })}`\n }\n }\n ret.push(row)\n }\n }\n }\n return ret.map((line) => (opts.style ? opts.style(line) : line))\n}\n\nexport function expandTabs(s: string, tabSize = TAB_WIDTH): string {\n if (!s.includes(\"\\t\")) return s\n const plain = hasAnsi(s) ? stripAnsi(s) : s\n const spaces: string[] = []\n let col = 0\n\n for (const ch of plain) {\n if (ch === \"\\t\") {\n const n = tabSize - (col % tabSize)\n spaces.push(\" \".repeat(n))\n col += n\n } else if (ch === \"\\n\" || ch === \"\\r\") {\n col = 0\n } else {\n col += stringWidth(ch)\n }\n }\n\n let i = 0\n return s.replaceAll(\"\\t\", () => spaces[i++] ?? \" \".repeat(tabSize))\n}\n\nexport function formatLines(\n text: string | string[],\n opts: {\n numbered?: boolean\n numberOffset?: number\n maxLineLength?: number\n offset?: number\n limit?: number\n more?: false | ((more: number, msg: string) => string)\n style?: StyleBuilder\n } = {}\n): string[] {\n const lines = (typeof text === \"string\" ? splitAnsi(text) : text).map((line) => expandTabs(line))\n const offset = clamp(opts.offset ?? 0, 0, lines.length - 1)\n const limit = clamp(opts.limit ?? lines.length, 1, lines.length - offset)\n const ellipsis = opts.style?.(ELLIPSIS) ?? ELLIPSIS\n let slice = lines\n .slice(offset, offset + limit)\n .map((line) => (opts.maxLineLength ? truncateAnsi(line, opts.maxLineLength, ellipsis) : line))\n\n const numberOffset = opts.numberOffset ?? offset + 1\n const gutterWidth = String(numberOffset + slice.length - 1).length + 2\n\n if (opts.numbered) {\n slice = slice.map((line, i) => {\n const n = numberOffset + i\n const lineo = `${String(n).padStart(gutterWidth - 2)} │`\n return `${opts.style?.(lineo) ?? lineo} ${line}`\n })\n }\n\n if (slice.length < lines.length && opts.more !== false) {\n const moreN = lines.length - slice.length\n let more = `+${moreN} more line${moreN > 1 ? \"s\" : \"\"}`\n more = opts.more?.(moreN, more) ?? more\n if (opts.numbered) {\n const moreGutter = `${\"…\".padStart(gutterWidth - 2)} │`\n slice.push(`${opts.style?.(moreGutter) ?? moreGutter} ${opts.style?.(more) ?? more}`)\n } else slice.push(opts.style?.(more) ?? more)\n }\n\n return slice\n}\n\nfunction maxContent(text: string): number {\n return text.split(\"\\n\").reduce((m, line) => Math.max(m, stringWidth(line)), 0)\n}\n\nfunction minContent(text: string, mode: WrapMode): number | undefined {\n switch (mode) {\n case \"none\": {\n return\n } // can't break, same as max\n case \"char\": {\n return 1\n } // can break anywhere → 1cell floor\n case \"word\": {\n // longest unbreakable run\n return text.split(/\\s+/).reduce((m, word) => Math.max(m, stringWidth(word)), 0)\n }\n default: {\n mode satisfies never // future modes get caught at type-check time\n return undefined\n }\n }\n}\n\nexport function calcLayout(text: string, opts: { wrap?: WrapMode } = {}): Layout {\n text = expandTabs(text)\n const width = maxContent(text)\n return {\n minWidth: minContent(text, opts.wrap ?? \"word\") ?? width,\n width,\n }\n}\n\nexport function countLines(text: string): number {\n let count = 0\n let pos = text.indexOf(\"\\n\")\n while (pos !== -1) {\n count++\n pos = text.indexOf(\"\\n\", pos + 1)\n }\n return count\n}\n\nexport function capitalize(s: string): string {\n return s.charAt(0).toUpperCase() + s.slice(1)\n}\n"],"mappings":"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"}