agim-cli 1.3.7 → 1.3.9
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.
- package/CHANGELOG.md +17 -0
- package/dist/cli-ui/tui/app.d.ts.map +1 -1
- package/dist/cli-ui/tui/app.js +67 -13
- package/dist/cli-ui/tui/app.js.map +1 -1
- package/dist/cli-ui/tui/markdown.d.ts +46 -2
- package/dist/cli-ui/tui/markdown.d.ts.map +1 -1
- package/dist/cli-ui/tui/markdown.js +362 -34
- package/dist/cli-ui/tui/markdown.js.map +1 -1
- package/dist/cli-ui/tui/markdown.test.d.ts +2 -0
- package/dist/cli-ui/tui/markdown.test.d.ts.map +1 -0
- package/dist/cli-ui/tui/markdown.test.js +240 -0
- package/dist/cli-ui/tui/markdown.test.js.map +1 -0
- package/dist/cli-ui/tui/stream-reveal.d.ts +13 -0
- package/dist/cli-ui/tui/stream-reveal.d.ts.map +1 -0
- package/dist/cli-ui/tui/stream-reveal.js +28 -0
- package/dist/cli-ui/tui/stream-reveal.js.map +1 -0
- package/dist/plugins/agents/claude-code/index.d.ts +8 -0
- package/dist/plugins/agents/claude-code/index.d.ts.map +1 -1
- package/dist/plugins/agents/claude-code/index.js +34 -3
- package/dist/plugins/agents/claude-code/index.js.map +1 -1
- package/dist/web/public/assets/{a2a-Bk51ozUt.js → a2a-D_I9ZX8i.js} +2 -2
- package/dist/web/public/assets/{a2a-Bk51ozUt.js.map → a2a-D_I9ZX8i.js.map} +1 -1
- package/dist/web/public/assets/{activity-DzKONPpA.js → activity-ZxWknBf9.js} +2 -2
- package/dist/web/public/assets/{activity-DzKONPpA.js.map → activity-ZxWknBf9.js.map} +1 -1
- package/dist/web/public/assets/{admins-CmZ4eQnt.js → admins-DFZcKgq0.js} +2 -2
- package/dist/web/public/assets/{admins-CmZ4eQnt.js.map → admins-DFZcKgq0.js.map} +1 -1
- package/dist/web/public/assets/{agents-lj76gn9U.js → agents-DTONSU0R.js} +2 -2
- package/dist/web/public/assets/{agents-lj76gn9U.js.map → agents-DTONSU0R.js.map} +1 -1
- package/dist/web/public/assets/{approvals-C5-3WBcb.js → approvals-BdDJvH8b.js} +2 -2
- package/dist/web/public/assets/{approvals-C5-3WBcb.js.map → approvals-BdDJvH8b.js.map} +1 -1
- package/dist/web/public/assets/{arrow-down-DAjYgwW2.js → arrow-down-Bhl7hNwa.js} +2 -2
- package/dist/web/public/assets/{arrow-down-DAjYgwW2.js.map → arrow-down-Bhl7hNwa.js.map} +1 -1
- package/dist/web/public/assets/{arrow-up-Cba9TuAO.js → arrow-up-DZLw3qr1.js} +2 -2
- package/dist/web/public/assets/{arrow-up-Cba9TuAO.js.map → arrow-up-DZLw3qr1.js.map} +1 -1
- package/dist/web/public/assets/{asks-qlttx_de.js → asks-Cj2QazUD.js} +2 -2
- package/dist/web/public/assets/{asks-qlttx_de.js.map → asks-Cj2QazUD.js.map} +1 -1
- package/dist/web/public/assets/{audit-CSjpfK6P.js → audit-sxS7UUa6.js} +2 -2
- package/dist/web/public/assets/{audit-CSjpfK6P.js.map → audit-sxS7UUa6.js.map} +1 -1
- package/dist/web/public/assets/{bell-Dm9oEZR5.js → bell-CqimaF3k.js} +2 -2
- package/dist/web/public/assets/{bell-Dm9oEZR5.js.map → bell-CqimaF3k.js.map} +1 -1
- package/dist/web/public/assets/{bgjobs-IOX_MrKV.js → bgjobs-BnXdz4TP.js} +2 -2
- package/dist/web/public/assets/{bgjobs-IOX_MrKV.js.map → bgjobs-BnXdz4TP.js.map} +1 -1
- package/dist/web/public/assets/{brain-D24bSBeM.js → brain-4TIClaVZ.js} +2 -2
- package/dist/web/public/assets/{brain-D24bSBeM.js.map → brain-4TIClaVZ.js.map} +1 -1
- package/dist/web/public/assets/{briefcase-BrIzC9EZ.js → briefcase-iKF60CJd.js} +2 -2
- package/dist/web/public/assets/{briefcase-BrIzC9EZ.js.map → briefcase-iKF60CJd.js.map} +1 -1
- package/dist/web/public/assets/{chat-DXki5zbL.js → chat-Cjp0ECm5.js} +2 -2
- package/dist/web/public/assets/{chat-DXki5zbL.js.map → chat-Cjp0ECm5.js.map} +1 -1
- package/dist/web/public/assets/{chevron-left-C8Ha_lMZ.js → chevron-left-sZyMkeG-.js} +2 -2
- package/dist/web/public/assets/{chevron-left-C8Ha_lMZ.js.map → chevron-left-sZyMkeG-.js.map} +1 -1
- package/dist/web/public/assets/{chevron-right-LF_j8BGd.js → chevron-right-CPHPRLSX.js} +2 -2
- package/dist/web/public/assets/{chevron-right-LF_j8BGd.js.map → chevron-right-CPHPRLSX.js.map} +1 -1
- package/dist/web/public/assets/{circle-check-CpSR3rJi.js → circle-check-BB11MxVm.js} +2 -2
- package/dist/web/public/assets/{circle-check-CpSR3rJi.js.map → circle-check-BB11MxVm.js.map} +1 -1
- package/dist/web/public/assets/{circle-check-big-Dbz0XziN.js → circle-check-big-Sj-6H_3x.js} +2 -2
- package/dist/web/public/assets/{circle-check-big-Dbz0XziN.js.map → circle-check-big-Sj-6H_3x.js.map} +1 -1
- package/dist/web/public/assets/{circle-x-XWMjbfp5.js → circle-x-DYcD4BUu.js} +2 -2
- package/dist/web/public/assets/{circle-x-XWMjbfp5.js.map → circle-x-DYcD4BUu.js.map} +1 -1
- package/dist/web/public/assets/{clock-BjVFYz37.js → clock-BVXa81yB.js} +2 -2
- package/dist/web/public/assets/{clock-BjVFYz37.js.map → clock-BVXa81yB.js.map} +1 -1
- package/dist/web/public/assets/{confirm-dialog-C8nuBNh3.js → confirm-dialog-C2melodU.js} +2 -2
- package/dist/web/public/assets/{confirm-dialog-C8nuBNh3.js.map → confirm-dialog-C2melodU.js.map} +1 -1
- package/dist/web/public/assets/{copy-BUxvUnbP.js → copy-D1OIgfLU.js} +2 -2
- package/dist/web/public/assets/{copy-BUxvUnbP.js.map → copy-D1OIgfLU.js.map} +1 -1
- package/dist/web/public/assets/{data-table-BHctKsHM.js → data-table-BYJ2qMyY.js} +2 -2
- package/dist/web/public/assets/{data-table-BHctKsHM.js.map → data-table-BYJ2qMyY.js.map} +1 -1
- package/dist/web/public/assets/{download-C0hikBL7.js → download-BChufhnl.js} +2 -2
- package/dist/web/public/assets/{download-C0hikBL7.js.map → download-BChufhnl.js.map} +1 -1
- package/dist/web/public/assets/{email-D940p9kF.js → email-exon2FvQ.js} +2 -2
- package/dist/web/public/assets/{email-D940p9kF.js.map → email-exon2FvQ.js.map} +1 -1
- package/dist/web/public/assets/{empty-state-BzzUgjlL.js → empty-state-De5ls0uC.js} +2 -2
- package/dist/web/public/assets/{empty-state-BzzUgjlL.js.map → empty-state-De5ls0uC.js.map} +1 -1
- package/dist/web/public/assets/{external-link-Cjuz11n7.js → external-link-CiJZi5YL.js} +2 -2
- package/dist/web/public/assets/{external-link-Cjuz11n7.js.map → external-link-CiJZi5YL.js.map} +1 -1
- package/dist/web/public/assets/{eye-DVQjbb2Z.js → eye-DowB5M1R.js} +2 -2
- package/dist/web/public/assets/{eye-DVQjbb2Z.js.map → eye-DowB5M1R.js.map} +1 -1
- package/dist/web/public/assets/{facts-C4hVaO6t.js → facts-BdnrzWfV.js} +2 -2
- package/dist/web/public/assets/{facts-C4hVaO6t.js.map → facts-BdnrzWfV.js.map} +1 -1
- package/dist/web/public/assets/{goals-89sYO75m.js → goals-D6ibCBqb.js} +2 -2
- package/dist/web/public/assets/{goals-89sYO75m.js.map → goals-D6ibCBqb.js.map} +1 -1
- package/dist/web/public/assets/{health-CKfZBddX.js → health-BA8ydz1A.js} +2 -2
- package/dist/web/public/assets/{health-CKfZBddX.js.map → health-BA8ydz1A.js.map} +1 -1
- package/dist/web/public/assets/{heart-pulse-BfYs3KFD.js → heart-pulse-ClrbGrB7.js} +2 -2
- package/dist/web/public/assets/{heart-pulse-BfYs3KFD.js.map → heart-pulse-ClrbGrB7.js.map} +1 -1
- package/dist/web/public/assets/{heartbeat-oKkyHWgV.js → heartbeat-j03zupAy.js} +2 -2
- package/dist/web/public/assets/{heartbeat-oKkyHWgV.js.map → heartbeat-j03zupAy.js.map} +1 -1
- package/dist/web/public/assets/{hot-Cas_nZv9.js → hot-D3bwuObi.js} +2 -2
- package/dist/web/public/assets/{hot-Cas_nZv9.js.map → hot-D3bwuObi.js.map} +1 -1
- package/dist/web/public/assets/{index-B795P_3p.js → index-DvWldAJY.js} +15 -15
- package/dist/web/public/assets/{index-B795P_3p.js.map → index-DvWldAJY.js.map} +1 -1
- package/dist/web/public/assets/{injection-DksSjIsi.js → injection-C89g9123.js} +2 -2
- package/dist/web/public/assets/{injection-DksSjIsi.js.map → injection-C89g9123.js.map} +1 -1
- package/dist/web/public/assets/{installed-DWq0Eluy.js → installed-1Hal8dxW.js} +2 -2
- package/dist/web/public/assets/{installed-DWq0Eluy.js.map → installed-1Hal8dxW.js.map} +1 -1
- package/dist/web/public/assets/{jobs-CqY-xtBr.js → jobs-cQ7V-7ec.js} +2 -2
- package/dist/web/public/assets/{jobs-CqY-xtBr.js.map → jobs-cQ7V-7ec.js.map} +1 -1
- package/dist/web/public/assets/{layout-DsoDxB0i.js → layout-BbRAk_tA.js} +2 -2
- package/dist/web/public/assets/{layout-DsoDxB0i.js.map → layout-BbRAk_tA.js.map} +1 -1
- package/dist/web/public/assets/{layout-CqgDOB5t.js → layout-CXGgZCd2.js} +2 -2
- package/dist/web/public/assets/{layout-CqgDOB5t.js.map → layout-CXGgZCd2.js.map} +1 -1
- package/dist/web/public/assets/{layout-Cltp3ikG.js → layout-CZ9hb8_a.js} +2 -2
- package/dist/web/public/assets/{layout-Cltp3ikG.js.map → layout-CZ9hb8_a.js.map} +1 -1
- package/dist/web/public/assets/{layout-BiAVhWgU.js → layout-U5o6RgqN.js} +2 -2
- package/dist/web/public/assets/{layout-BiAVhWgU.js.map → layout-U5o6RgqN.js.map} +1 -1
- package/dist/web/public/assets/{layout-BodTIhhE.js → layout-Y9JSZczb.js} +2 -2
- package/dist/web/public/assets/{layout-BodTIhhE.js.map → layout-Y9JSZczb.js.map} +1 -1
- package/dist/web/public/assets/{llm-D3Kd9gqa.js → llm-CumYZM83.js} +2 -2
- package/dist/web/public/assets/{llm-D3Kd9gqa.js.map → llm-CumYZM83.js.map} +1 -1
- package/dist/web/public/assets/{loader-circle-DsLQMvHE.js → loader-circle-CZQXsfz7.js} +2 -2
- package/dist/web/public/assets/{loader-circle-DsLQMvHE.js.map → loader-circle-CZQXsfz7.js.map} +1 -1
- package/dist/web/public/assets/{map-pin-e694Eet6.js → map-pin-CYj0xBbt.js} +2 -2
- package/dist/web/public/assets/{map-pin-e694Eet6.js.map → map-pin-CYj0xBbt.js.map} +1 -1
- package/dist/web/public/assets/{mcp-BoWJqog4.js → mcp-DP4Vj1Nh.js} +2 -2
- package/dist/web/public/assets/{mcp-BoWJqog4.js.map → mcp-DP4Vj1Nh.js.map} +1 -1
- package/dist/web/public/assets/{memos-C81bimPJ.js → memos-ZDpt1S28.js} +2 -2
- package/dist/web/public/assets/{memos-C81bimPJ.js.map → memos-ZDpt1S28.js.map} +1 -1
- package/dist/web/public/assets/{messengers-CGcjXUeJ.js → messengers-B007J8et.js} +2 -2
- package/dist/web/public/assets/{messengers-CGcjXUeJ.js.map → messengers-B007J8et.js.map} +1 -1
- package/dist/web/public/assets/{mobile-Duy_If5A.js → mobile-Crm0YJ36.js} +2 -2
- package/dist/web/public/assets/{mobile-Duy_If5A.js.map → mobile-Crm0YJ36.js.map} +1 -1
- package/dist/web/public/assets/{network-DnBhCncp.js → network-BYbGwOEp.js} +2 -2
- package/dist/web/public/assets/{network-DnBhCncp.js.map → network-BYbGwOEp.js.map} +1 -1
- package/dist/web/public/assets/{outbox-DrReVtHr.js → outbox-D7xZ5y2T.js} +2 -2
- package/dist/web/public/assets/{outbox-DrReVtHr.js.map → outbox-D7xZ5y2T.js.map} +1 -1
- package/dist/web/public/assets/{pagination-DgS8vaZM.js → pagination-bzSoQOAd.js} +2 -2
- package/dist/web/public/assets/{pagination-DgS8vaZM.js.map → pagination-bzSoQOAd.js.map} +1 -1
- package/dist/web/public/assets/{persona-NTg-RuPa.js → persona-VT6A3VYL.js} +2 -2
- package/dist/web/public/assets/{persona-NTg-RuPa.js.map → persona-VT6A3VYL.js.map} +1 -1
- package/dist/web/public/assets/{plans-CUsr4aMb.js → plans-b4DAc_3a.js} +2 -2
- package/dist/web/public/assets/{plans-CUsr4aMb.js.map → plans-b4DAc_3a.js.map} +1 -1
- package/dist/web/public/assets/{play-G96k2QBR.js → play-SPYhVFeC.js} +2 -2
- package/dist/web/public/assets/{play-G96k2QBR.js.map → play-SPYhVFeC.js.map} +1 -1
- package/dist/web/public/assets/{plus-6RZ3XScp.js → plus-D__n9IVW.js} +2 -2
- package/dist/web/public/assets/{plus-6RZ3XScp.js.map → plus-D__n9IVW.js.map} +1 -1
- package/dist/web/public/assets/{policy-BFlQnPo5.js → policy-CWeiR9UO.js} +2 -2
- package/dist/web/public/assets/{policy-BFlQnPo5.js.map → policy-CWeiR9UO.js.map} +1 -1
- package/dist/web/public/assets/{qr-code-L7ClZ31U.js → qr-code-BqDQw03Z.js} +2 -2
- package/dist/web/public/assets/{qr-code-L7ClZ31U.js.map → qr-code-BqDQw03Z.js.map} +1 -1
- package/dist/web/public/assets/{refresh-ccw-S3sFYfDb.js → refresh-ccw-CW2loqyz.js} +2 -2
- package/dist/web/public/assets/{refresh-ccw-S3sFYfDb.js.map → refresh-ccw-CW2loqyz.js.map} +1 -1
- package/dist/web/public/assets/{reminders-DVzHdBpK.js → reminders-BAl8NC0R.js} +2 -2
- package/dist/web/public/assets/{reminders-DVzHdBpK.js.map → reminders-BAl8NC0R.js.map} +1 -1
- package/dist/web/public/assets/{save-DetwgDjo.js → save-DzWp78MC.js} +2 -2
- package/dist/web/public/assets/{save-DetwgDjo.js.map → save-DzWp78MC.js.map} +1 -1
- package/dist/web/public/assets/{schedules-CslP2Ntr.js → schedules-6cyfjv0O.js} +2 -2
- package/dist/web/public/assets/{schedules-CslP2Ntr.js.map → schedules-6cyfjv0O.js.map} +1 -1
- package/dist/web/public/assets/{search-ByHc__pY.js → search-Bh7gD1Aq.js} +2 -2
- package/dist/web/public/assets/{search-ByHc__pY.js.map → search-Bh7gD1Aq.js.map} +1 -1
- package/dist/web/public/assets/{search-Bx2TNvqF.js → search-DVWPME2t.js} +2 -2
- package/dist/web/public/assets/{search-Bx2TNvqF.js.map → search-DVWPME2t.js.map} +1 -1
- package/dist/web/public/assets/{security-B4dw2-ZU.js → security-DlZ_rDwC.js} +2 -2
- package/dist/web/public/assets/{security-B4dw2-ZU.js.map → security-DlZ_rDwC.js.map} +1 -1
- package/dist/web/public/assets/{service-LujRx8DT.js → service-DKkji52r.js} +2 -2
- package/dist/web/public/assets/{service-LujRx8DT.js.map → service-DKkji52r.js.map} +1 -1
- package/dist/web/public/assets/{shield-alert-BM2sbwiD.js → shield-alert-5pYX52s1.js} +2 -2
- package/dist/web/public/assets/{shield-alert-BM2sbwiD.js.map → shield-alert-5pYX52s1.js.map} +1 -1
- package/dist/web/public/assets/{status-badge-Bz0a-nE1.js → status-badge-W8PRNBT2.js} +2 -2
- package/dist/web/public/assets/{status-badge-Bz0a-nE1.js.map → status-badge-W8PRNBT2.js.map} +1 -1
- package/dist/web/public/assets/{subtasks-BEAppda9.js → subtasks-DSvOTpF0.js} +2 -2
- package/dist/web/public/assets/{subtasks-BEAppda9.js.map → subtasks-DSvOTpF0.js.map} +1 -1
- package/dist/web/public/assets/{table-Dl8Faxz-.js → table-B695Fh_p.js} +2 -2
- package/dist/web/public/assets/{table-Dl8Faxz-.js.map → table-B695Fh_p.js.map} +1 -1
- package/dist/web/public/assets/{topn-CXTn3Qdn.js → topn-DqUC9bYh.js} +2 -2
- package/dist/web/public/assets/{topn-CXTn3Qdn.js.map → topn-DqUC9bYh.js.map} +1 -1
- package/dist/web/public/assets/{trash-2-DUSLukqd.js → trash-2-DH4UNSUm.js} +2 -2
- package/dist/web/public/assets/{trash-2-DUSLukqd.js.map → trash-2-DH4UNSUm.js.map} +1 -1
- package/dist/web/public/assets/{use-agim-skills-BD1AIi8d.js → use-agim-skills-BD17YQCK.js} +2 -2
- package/dist/web/public/assets/{use-agim-skills-BD1AIi8d.js.map → use-agim-skills-BD17YQCK.js.map} +1 -1
- package/dist/web/public/assets/{use-background-tasks-FuodO-_C.js → use-background-tasks-Clyo1IGE.js} +2 -2
- package/dist/web/public/assets/{use-background-tasks-FuodO-_C.js.map → use-background-tasks-Clyo1IGE.js.map} +1 -1
- package/dist/web/public/assets/{use-memory-4xOyJX4L.js → use-memory-BGvVWIQX.js} +2 -2
- package/dist/web/public/assets/{use-memory-4xOyJX4L.js.map → use-memory-BGvVWIQX.js.map} +1 -1
- package/dist/web/public/assets/{use-observability-DMebP5-1.js → use-observability-IlURblVq.js} +2 -2
- package/dist/web/public/assets/{use-observability-DMebP5-1.js.map → use-observability-IlURblVq.js.map} +1 -1
- package/dist/web/public/assets/{use-settings-GPajsGBB.js → use-settings-DFTGCq8J.js} +2 -2
- package/dist/web/public/assets/{use-settings-GPajsGBB.js.map → use-settings-DFTGCq8J.js.map} +1 -1
- package/dist/web/public/assets/{use-workspace-C6qix-sY.js → use-workspace-DaXX6QdK.js} +2 -2
- package/dist/web/public/assets/{use-workspace-C6qix-sY.js.map → use-workspace-DaXX6QdK.js.map} +1 -1
- package/dist/web/public/assets/{vector-hGc2RFNQ.js → vector-CKUwZBiK.js} +2 -2
- package/dist/web/public/assets/{vector-hGc2RFNQ.js.map → vector-CKUwZBiK.js.map} +1 -1
- package/dist/web/public/assets/{viewer-YkLMRkmd.js → viewer-edlHJiVg.js} +2 -2
- package/dist/web/public/assets/{viewer-YkLMRkmd.js.map → viewer-edlHJiVg.js.map} +1 -1
- package/dist/web/public/assets/{workspace-0GRMLd5j.js → workspace-B0jlv7Gj.js} +2 -2
- package/dist/web/public/assets/{workspace-0GRMLd5j.js.map → workspace-B0jlv7Gj.js.map} +1 -1
- package/dist/web/public/assets/{workspaces-DPa7ByRm.js → workspaces-_Ho1uiD-.js} +2 -2
- package/dist/web/public/assets/{workspaces-DPa7ByRm.js.map → workspaces-_Ho1uiD-.js.map} +1 -1
- package/dist/web/public/index.html +1 -1
- package/package.json +1 -1
|
@@ -23,26 +23,118 @@ const LANG_ALIASES = {
|
|
|
23
23
|
shell: 'sh', bash: 'sh', zsh: 'sh',
|
|
24
24
|
golang: 'go',
|
|
25
25
|
};
|
|
26
|
-
|
|
26
|
+
// Per-language comment/string syntax for the highlighter. Keyword lists are
|
|
27
|
+
// derived from KEYWORDS (above) so there's a single source of truth.
|
|
28
|
+
const LINE_COMMENT = { js: '//', ts: '//', go: '//', py: '#', sh: '#' };
|
|
29
|
+
const BLOCK_COMMENT_LANGS = new Set(['js', 'ts', 'go']);
|
|
30
|
+
const STRING_QUOTES = {
|
|
31
|
+
js: '\'"`', ts: '\'"`', go: '"`', py: '\'"', sh: '\'"',
|
|
32
|
+
};
|
|
33
|
+
const KEYWORD_SET_CACHE = {};
|
|
34
|
+
function keywordSet(canon) {
|
|
35
|
+
if (canon in KEYWORD_SET_CACHE)
|
|
36
|
+
return KEYWORD_SET_CACHE[canon];
|
|
37
|
+
let set;
|
|
38
|
+
const re = KEYWORDS[canon];
|
|
39
|
+
if (re) {
|
|
40
|
+
const m = /\(([^)]*)\)/.exec(re.source); // pull the alternation out of \b(a|b|c)\b
|
|
41
|
+
if (m)
|
|
42
|
+
set = new Set(m[1].split('|'));
|
|
43
|
+
}
|
|
44
|
+
KEYWORD_SET_CACHE[canon] = set;
|
|
45
|
+
return set;
|
|
46
|
+
}
|
|
47
|
+
const NUM_RE = /(?:0[xX][0-9a-fA-F]+|\d[\d_]*(?:\.\d+)?(?:[eE][+-]?\d+)?)/y;
|
|
48
|
+
const isIdentStart = (c) => /[A-Za-z_$]/.test(c);
|
|
49
|
+
const isIdentPart = (c) => /[A-Za-z0-9_$]/.test(c);
|
|
50
|
+
// Single left-to-right scan so categories never overlap: a keyword inside a
|
|
51
|
+
// string/comment is not re-coloured (the string/comment is matched first and
|
|
52
|
+
// the cursor jumps past it). Best-effort, not a real parser — matches this
|
|
53
|
+
// file's "useful visual separation, not correctness" goal.
|
|
54
|
+
export function highlightCode(code, lang) {
|
|
27
55
|
const lc = lang?.toLowerCase();
|
|
28
56
|
const canon = lc ? (LANG_ALIASES[lc] ?? lc) : undefined;
|
|
29
|
-
|
|
30
|
-
|
|
57
|
+
if (!canon)
|
|
58
|
+
return [{ text: code }];
|
|
59
|
+
const kw = keywordSet(canon);
|
|
60
|
+
const line = LINE_COMMENT[canon];
|
|
61
|
+
const block = BLOCK_COMMENT_LANGS.has(canon);
|
|
62
|
+
const quotes = STRING_QUOTES[canon] ?? '';
|
|
63
|
+
if (!kw && !line && !block && !quotes)
|
|
31
64
|
return [{ text: code }];
|
|
32
65
|
const spans = [];
|
|
33
|
-
let
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
66
|
+
let plain = '';
|
|
67
|
+
const flush = () => { if (plain) {
|
|
68
|
+
spans.push({ text: plain });
|
|
69
|
+
plain = '';
|
|
70
|
+
} };
|
|
71
|
+
const push = (text, kind) => { flush(); spans.push({ text, kind }); };
|
|
72
|
+
const n = code.length;
|
|
73
|
+
let i = 0;
|
|
74
|
+
while (i < n) {
|
|
75
|
+
const c = code[i];
|
|
76
|
+
// line comment → to end of line
|
|
77
|
+
if (line && code.startsWith(line, i)) {
|
|
78
|
+
let j = code.indexOf('\n', i);
|
|
79
|
+
if (j === -1)
|
|
80
|
+
j = n;
|
|
81
|
+
push(code.slice(i, j), 'comment');
|
|
82
|
+
i = j;
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
// block comment → to closing */ (or EOF)
|
|
86
|
+
if (block && c === '/' && code[i + 1] === '*') {
|
|
87
|
+
const end = code.indexOf('*/', i + 2);
|
|
88
|
+
const j = end === -1 ? n : end + 2;
|
|
89
|
+
push(code.slice(i, j), 'comment');
|
|
90
|
+
i = j;
|
|
91
|
+
continue;
|
|
92
|
+
}
|
|
93
|
+
// string → to matching unescaped quote (or EOF)
|
|
94
|
+
if (quotes.includes(c)) {
|
|
95
|
+
let j = i + 1;
|
|
96
|
+
while (j < n) {
|
|
97
|
+
if (code[j] === '\\') {
|
|
98
|
+
j += 2;
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
if (code[j] === c) {
|
|
102
|
+
j++;
|
|
103
|
+
break;
|
|
104
|
+
}
|
|
105
|
+
j++;
|
|
106
|
+
}
|
|
107
|
+
push(code.slice(i, Math.min(j, n)), 'string');
|
|
108
|
+
i = Math.min(j, n);
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
// identifier → keyword or plain (whole word, so `returns` ≠ `return`)
|
|
112
|
+
if (isIdentStart(c)) {
|
|
113
|
+
let j = i + 1;
|
|
114
|
+
while (j < n && isIdentPart(code[j]))
|
|
115
|
+
j++;
|
|
116
|
+
const word = code.slice(i, j);
|
|
117
|
+
if (kw?.has(word))
|
|
118
|
+
push(word, 'keyword');
|
|
119
|
+
else
|
|
120
|
+
plain += word;
|
|
121
|
+
i = j;
|
|
122
|
+
continue;
|
|
123
|
+
}
|
|
124
|
+
// number (identifiers were handled above, so this is a real literal)
|
|
125
|
+
if (c >= '0' && c <= '9') {
|
|
126
|
+
NUM_RE.lastIndex = i;
|
|
127
|
+
const m = NUM_RE.exec(code);
|
|
128
|
+
if (m && m.index === i) {
|
|
129
|
+
push(m[0], 'number');
|
|
130
|
+
i += m[0].length;
|
|
131
|
+
continue;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
plain += c;
|
|
135
|
+
i++;
|
|
43
136
|
}
|
|
44
|
-
|
|
45
|
-
spans.push({ text: code.slice(last) });
|
|
137
|
+
flush();
|
|
46
138
|
return spans;
|
|
47
139
|
}
|
|
48
140
|
function spanColor(kind) {
|
|
@@ -88,13 +180,241 @@ function renderInline(tokens, keyPrefix) {
|
|
|
88
180
|
case 'br':
|
|
89
181
|
out.push(_jsx(Text, { children: '\n' }, k));
|
|
90
182
|
break;
|
|
183
|
+
case 'image':
|
|
184
|
+
out.push(_jsxs(Text, { children: [_jsx(Text, { children: tok.text ?? '' }), _jsxs(Text, { dimColor: true, children: [" (", tok.href ?? '', ")"] })] }, k));
|
|
185
|
+
break;
|
|
91
186
|
default:
|
|
92
|
-
out.push(_jsx(Text, { children: tok.text ?? '' }, k));
|
|
187
|
+
out.push(_jsx(Text, { children: tok.text ?? tok.raw ?? '' }, k));
|
|
93
188
|
}
|
|
94
189
|
});
|
|
95
190
|
return out;
|
|
96
191
|
}
|
|
97
|
-
|
|
192
|
+
// Visible plain text of inline cell tokens — the exact characters
|
|
193
|
+
// renderInlineCell will draw (marked's cell `.text` keeps the raw markup, so
|
|
194
|
+
// it can't be used for width math). Mirror of renderInlineCell, used to
|
|
195
|
+
// compute column widths so styled cells stay aligned.
|
|
196
|
+
function collapseNl(s) { return s.replace(/\s*\n\s*/g, ' '); }
|
|
197
|
+
export function inlineCellText(tokens) {
|
|
198
|
+
if (!tokens)
|
|
199
|
+
return '';
|
|
200
|
+
let s = '';
|
|
201
|
+
for (const tok of tokens) {
|
|
202
|
+
switch (tok.type) {
|
|
203
|
+
case 'strong':
|
|
204
|
+
case 'em':
|
|
205
|
+
case 'del':
|
|
206
|
+
case 'link':
|
|
207
|
+
s += inlineCellText(tok.tokens);
|
|
208
|
+
break;
|
|
209
|
+
case 'br':
|
|
210
|
+
s += ' ';
|
|
211
|
+
break;
|
|
212
|
+
default: s += collapseNl(tok.text ?? '');
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
return s;
|
|
216
|
+
}
|
|
217
|
+
// Width-preserving inline renderer for table cells. Mirrors renderInline but
|
|
218
|
+
// emits the SAME character content as inlineCellText() (no codespan
|
|
219
|
+
// backticks, no link " (url)" expansion) so column padding stays aligned.
|
|
220
|
+
export function renderInlineCell(tokens, keyPrefix) {
|
|
221
|
+
if (!tokens)
|
|
222
|
+
return [];
|
|
223
|
+
const out = [];
|
|
224
|
+
tokens.forEach((tok, i) => {
|
|
225
|
+
const k = `${keyPrefix}-c${i}`;
|
|
226
|
+
const plain = (tok.text ?? '').replace(/\s*\n\s*/g, ' ');
|
|
227
|
+
switch (tok.type) {
|
|
228
|
+
case 'strong':
|
|
229
|
+
out.push(_jsx(Text, { bold: true, children: renderInlineCell(tok.tokens, k) }, k));
|
|
230
|
+
break;
|
|
231
|
+
case 'em':
|
|
232
|
+
out.push(_jsx(Text, { italic: true, children: renderInlineCell(tok.tokens, k) }, k));
|
|
233
|
+
break;
|
|
234
|
+
case 'del':
|
|
235
|
+
out.push(_jsx(Text, { strikethrough: true, children: renderInlineCell(tok.tokens, k) }, k));
|
|
236
|
+
break;
|
|
237
|
+
case 'codespan':
|
|
238
|
+
out.push(_jsx(Text, { color: "cyan", children: plain }, k));
|
|
239
|
+
break;
|
|
240
|
+
case 'link':
|
|
241
|
+
out.push(_jsx(Text, { underline: true, children: renderInlineCell(tok.tokens, k) }, k));
|
|
242
|
+
break;
|
|
243
|
+
case 'br':
|
|
244
|
+
out.push(_jsx(Text, { children: ' ' }, k));
|
|
245
|
+
break;
|
|
246
|
+
default: out.push(_jsx(Text, { children: plain }, k));
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
return out;
|
|
250
|
+
}
|
|
251
|
+
/** CJK-aware display width: East-Asian wide / fullwidth code points (and
|
|
252
|
+
* most emoji) occupy 2 terminal columns, everything else 1. Iterating with
|
|
253
|
+
* for..of so astral chars (surrogate pairs) count once. Dependency-free —
|
|
254
|
+
* matches this file's "lean install" ethos. */
|
|
255
|
+
export function displayWidth(s) {
|
|
256
|
+
let w = 0;
|
|
257
|
+
for (const ch of s) {
|
|
258
|
+
const cp = ch.codePointAt(0) ?? 0;
|
|
259
|
+
w += isWideCodePoint(cp) ? 2 : 1;
|
|
260
|
+
}
|
|
261
|
+
return w;
|
|
262
|
+
}
|
|
263
|
+
function isWideCodePoint(cp) {
|
|
264
|
+
return ((cp >= 0x1100 && cp <= 0x115f) || // Hangul Jamo
|
|
265
|
+
cp === 0x2329 || cp === 0x232a ||
|
|
266
|
+
(cp >= 0x2e80 && cp <= 0x303e) || // CJK radicals … Kangxi
|
|
267
|
+
(cp >= 0x3041 && cp <= 0x33ff) || // Hiragana/Katakana/CJK symbols
|
|
268
|
+
(cp >= 0x3400 && cp <= 0x4dbf) || // CJK Ext A
|
|
269
|
+
(cp >= 0x4e00 && cp <= 0x9fff) || // CJK Unified
|
|
270
|
+
(cp >= 0xa000 && cp <= 0xa4cf) || // Yi
|
|
271
|
+
(cp >= 0xac00 && cp <= 0xd7a3) || // Hangul Syllables
|
|
272
|
+
(cp >= 0xf900 && cp <= 0xfaff) || // CJK Compatibility
|
|
273
|
+
(cp >= 0xfe30 && cp <= 0xfe4f) || // CJK Compatibility Forms
|
|
274
|
+
(cp >= 0xff00 && cp <= 0xff60) || // Fullwidth Forms
|
|
275
|
+
(cp >= 0xffe0 && cp <= 0xffe6) ||
|
|
276
|
+
(cp >= 0x1f300 && cp <= 0x1faff) || // emoji & symbols (wide)
|
|
277
|
+
(cp >= 0x20000 && cp <= 0x3fffd) // CJK Ext B+
|
|
278
|
+
);
|
|
279
|
+
}
|
|
280
|
+
function padCell(s, width, align) {
|
|
281
|
+
const pad = Math.max(0, width - displayWidth(s));
|
|
282
|
+
if (align === 'right')
|
|
283
|
+
return ' '.repeat(pad) + s;
|
|
284
|
+
if (align === 'center') {
|
|
285
|
+
const left = Math.floor(pad / 2);
|
|
286
|
+
return ' '.repeat(left) + s + ' '.repeat(pad - left);
|
|
287
|
+
}
|
|
288
|
+
return s + ' '.repeat(pad);
|
|
289
|
+
}
|
|
290
|
+
const cleanCell = (v) => (v ?? '').replace(/\s*\n\s*/g, ' ').trim();
|
|
291
|
+
/** Decide table layout from cleaned cell text. Pure + exported for testing.
|
|
292
|
+
* 'grid' when the columns fit availWidth, else 'list'. `colWidths` are the
|
|
293
|
+
* per-column display widths used for padding in grid mode. */
|
|
294
|
+
export function computeTableLayout(header, rows, availWidth) {
|
|
295
|
+
const cols = header.length;
|
|
296
|
+
const colWidths = [];
|
|
297
|
+
for (let c = 0; c < cols; c++) {
|
|
298
|
+
let w = displayWidth(header[c] ?? '');
|
|
299
|
+
for (const r of rows)
|
|
300
|
+
w = Math.max(w, displayWidth(r[c] ?? ''));
|
|
301
|
+
colWidths.push(w);
|
|
302
|
+
}
|
|
303
|
+
const total = colWidths.reduce((a, b) => a + b, 0) + 3 * Math.max(0, cols - 1);
|
|
304
|
+
return { mode: cols > 0 && total <= availWidth ? 'grid' : 'list', colWidths };
|
|
305
|
+
}
|
|
306
|
+
/** Format a GFM table into plain terminal lines. Kept as the pure/plain path
|
|
307
|
+
* (used by tests and as the basis for the list fallback). The interactive
|
|
308
|
+
* renderer (renderTable) layers inline styling on top via computeTableLayout. */
|
|
309
|
+
export function buildTableLines(header, rows, align, availWidth) {
|
|
310
|
+
const cols = header.length;
|
|
311
|
+
const H = header.map(cleanCell);
|
|
312
|
+
const R = rows.map((r) => Array.from({ length: cols }, (_, i) => cleanCell(r[i])));
|
|
313
|
+
const al = (c) => align[c] ?? 'left';
|
|
314
|
+
const { mode, colWidths } = computeTableLayout(H, R, availWidth);
|
|
315
|
+
if (mode === 'grid') {
|
|
316
|
+
const fmtRow = (cells) => cells.map((cell, c) => padCell(cell, colWidths[c], al(c))).join(' │ ');
|
|
317
|
+
const sep = colWidths.map((w) => '─'.repeat(w)).join('─┼─');
|
|
318
|
+
return { mode, lines: [fmtRow(H), sep, ...R.map(fmtRow)] };
|
|
319
|
+
}
|
|
320
|
+
const lines = [];
|
|
321
|
+
R.forEach((r, ri) => {
|
|
322
|
+
for (let c = 0; c < cols; c++)
|
|
323
|
+
lines.push(`${H[c]}: ${r[c]}`);
|
|
324
|
+
if (ri < R.length - 1)
|
|
325
|
+
lines.push('');
|
|
326
|
+
});
|
|
327
|
+
return { mode, lines };
|
|
328
|
+
}
|
|
329
|
+
/** Pad parts (leading/trailing spaces) for a styled cell of known display
|
|
330
|
+
* width, honouring alignment. Lets us pad around JSX inline content. */
|
|
331
|
+
function padParts(textWidth, colWidth, align) {
|
|
332
|
+
const pad = Math.max(0, colWidth - textWidth);
|
|
333
|
+
if (align === 'right')
|
|
334
|
+
return { left: ' '.repeat(pad), right: '' };
|
|
335
|
+
if (align === 'center') {
|
|
336
|
+
const l = Math.floor(pad / 2);
|
|
337
|
+
return { left: ' '.repeat(l), right: ' '.repeat(pad - l) };
|
|
338
|
+
}
|
|
339
|
+
return { left: '', right: ' '.repeat(pad) };
|
|
340
|
+
}
|
|
341
|
+
function renderTable(tok, key, width) {
|
|
342
|
+
const t = tok;
|
|
343
|
+
const headerCells = t.header ?? [];
|
|
344
|
+
const rowCells = t.rows ?? [];
|
|
345
|
+
const cols = headerCells.length;
|
|
346
|
+
const align = (t.align ?? []);
|
|
347
|
+
const al = (c) => align[c] ?? 'left';
|
|
348
|
+
// Visible text (what actually gets drawn) drives width math; marked's
|
|
349
|
+
// cell.text keeps raw markup so it would over-pad styled cells.
|
|
350
|
+
const visible = (c) => c?.tokens?.length ? inlineCellText(c.tokens) : cleanCell(c?.text);
|
|
351
|
+
const headerText = headerCells.map(visible);
|
|
352
|
+
const rowsText = rowCells.map((r) => Array.from({ length: cols }, (_, i) => visible(r[i])));
|
|
353
|
+
const avail = Math.max(20, width - 2); // account for the chat box paddingX
|
|
354
|
+
const { mode, colWidths } = computeTableLayout(headerText, rowsText, avail);
|
|
355
|
+
// A styled cell: inline content (width-preserving) padded to the column.
|
|
356
|
+
const cell = (cc, c, kkey, header) => {
|
|
357
|
+
const text = visible(cc);
|
|
358
|
+
const { left, right } = padParts(displayWidth(text), colWidths[c], al(c));
|
|
359
|
+
const inner = cc?.tokens?.length ? renderInlineCell(cc.tokens, kkey) : text;
|
|
360
|
+
return (_jsxs(Text, { children: [left, header ? _jsx(Text, { bold: true, color: "cyan", children: inner }) : _jsx(Text, { children: inner }), right] }, kkey));
|
|
361
|
+
};
|
|
362
|
+
if (mode === 'grid') {
|
|
363
|
+
const sep = colWidths.map((w) => '─'.repeat(w)).join('─┼─');
|
|
364
|
+
const gridRow = (cells, rk, header) => (_jsx(Text, { children: Array.from({ length: cols }, (_, c) => {
|
|
365
|
+
const node = cell(cells[c], c, `${rk}-c${c}`, header);
|
|
366
|
+
// biome-ignore lint/suspicious/noArrayIndexKey: table cells have no stable id; position is the key
|
|
367
|
+
return c === 0 ? node : _jsxs(Text, { children: [_jsx(Text, { dimColor: true, children: " \u2502 " }), node] }, `${rk}-s${c}`);
|
|
368
|
+
}) }, rk));
|
|
369
|
+
return (_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [gridRow(headerCells, `${key}-h`, true), _jsx(Text, { dimColor: true, children: sep }), rowCells.map((r, ri) => gridRow(r, `${key}-r${ri}`, false))] }, key));
|
|
370
|
+
}
|
|
371
|
+
// list fallback — "Header: value" records, styled value, nothing truncated.
|
|
372
|
+
return (_jsx(Box, { flexDirection: "column", marginBottom: 1, children: rowCells.map((r, ri) => (
|
|
373
|
+
// biome-ignore lint/suspicious/noArrayIndexKey: table rows have no stable id; position is the key
|
|
374
|
+
_jsx(Box, { flexDirection: "column", marginBottom: ri < rowCells.length - 1 ? 1 : 0, children: Array.from({ length: cols }, (_, c) => (
|
|
375
|
+
// biome-ignore lint/suspicious/noArrayIndexKey: table cells have no stable id; position is the key
|
|
376
|
+
_jsxs(Box, { children: [_jsxs(Text, { bold: true, color: "cyan", children: [headerText[c], ": "] }), _jsx(Text, { children: r[c]?.tokens?.length ? renderInlineCell(r[c].tokens, `${key}-r${ri}-c${c}`) : visible(r[c]) })] }, `${key}-r${ri}-c${c}`))) }, `${key}-r${ri}`))) }, key));
|
|
377
|
+
}
|
|
378
|
+
// Recursively render a list token. Handles:
|
|
379
|
+
// * proper inline formatting of item text (bold/code/links — not the
|
|
380
|
+
// literal `**`/`` ` `` the old flatten-to-text path produced)
|
|
381
|
+
// * nested sub-lists (indented by depth)
|
|
382
|
+
// * task checkboxes (`- [ ]` / `- [x]`)
|
|
383
|
+
// * ordered-list `start` (e.g. a list beginning at "3.")
|
|
384
|
+
function renderList(tok, key, width, depth) {
|
|
385
|
+
const ordered = !!tok.ordered;
|
|
386
|
+
const startRaw = tok.start;
|
|
387
|
+
const start = typeof startRaw === 'number' ? startRaw : 1;
|
|
388
|
+
const items = (tok.items ?? []);
|
|
389
|
+
const indent = ' '.repeat(depth);
|
|
390
|
+
return (_jsx(Box, { flexDirection: "column", marginBottom: depth === 0 ? 1 : 0, children: items.map((item, i) => {
|
|
391
|
+
const it = item;
|
|
392
|
+
const marker = it.task
|
|
393
|
+
? (it.checked ? '☑ ' : '☐ ')
|
|
394
|
+
: (ordered ? `${start + i}. ` : '• ');
|
|
395
|
+
// Split item content: inline-ish leading content (text/paragraph)
|
|
396
|
+
// renders on the marker line; block children (nested lists, code)
|
|
397
|
+
// render beneath, indented one level deeper.
|
|
398
|
+
const inlineNodes = [];
|
|
399
|
+
const childBlocks = [];
|
|
400
|
+
for (const b of (it.tokens ?? [])) {
|
|
401
|
+
const bt = b;
|
|
402
|
+
if (bt.type === 'text' || bt.type === 'paragraph') {
|
|
403
|
+
inlineNodes.push(...renderInline(bt.tokens, `${key}-${i}`));
|
|
404
|
+
}
|
|
405
|
+
else if (bt.type === 'checkbox') {
|
|
406
|
+
// marker already encodes the checkbox state — skip
|
|
407
|
+
}
|
|
408
|
+
else {
|
|
409
|
+
childBlocks.push(bt);
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { children: [_jsxs(Text, { dimColor: true, children: [indent, marker] }), _jsx(Text, { children: inlineNodes })] }), childBlocks.map((cb, ci) => cb.type === 'list'
|
|
413
|
+
? renderList(cb, `${key}-${i}-${ci}`, width, depth + 1)
|
|
414
|
+
: renderBlock(cb, `${key}-${i}-${ci}`, width))] }, tokenKey(item, key)));
|
|
415
|
+
}) }, key));
|
|
416
|
+
}
|
|
417
|
+
function renderBlock(tok, key, width) {
|
|
98
418
|
switch (tok.type) {
|
|
99
419
|
case 'heading': {
|
|
100
420
|
const depth = Math.min((tok.depth ?? 1) - 1, HEADING_COLORS.length - 1);
|
|
@@ -114,32 +434,40 @@ function renderBlock(tok, key) {
|
|
|
114
434
|
}) })] }, key));
|
|
115
435
|
}
|
|
116
436
|
case 'blockquote':
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
return (
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
437
|
+
// Render inner blocks recursively (paragraphs, nested lists, code)
|
|
438
|
+
// behind a dim "│ " gutter. Previously each inner token went through
|
|
439
|
+
// renderInline, which showed literal markdown for non-paragraph
|
|
440
|
+
// blocks and dropped nested lists entirely.
|
|
441
|
+
return (_jsxs(Box, { marginBottom: 1, flexDirection: "row", children: [_jsx(Text, { dimColor: true, children: "\u2502 " }), _jsx(Box, { flexDirection: "column", children: (tok.tokens ?? []).map((inner, i) => inner.type === 'list'
|
|
442
|
+
? renderList(inner, `${key}-${i}`, width, 0)
|
|
443
|
+
: renderBlock(inner, `${key}-${i}`, width)) })] }, key));
|
|
444
|
+
case 'list':
|
|
445
|
+
return renderList(tok, key, width, 0);
|
|
446
|
+
case 'table':
|
|
447
|
+
return renderTable(tok, key, width);
|
|
128
448
|
case 'hr':
|
|
129
449
|
return _jsx(Box, { marginBottom: 1, children: _jsx(Text, { dimColor: true, children: '─'.repeat(40) }) }, key);
|
|
130
450
|
case 'space':
|
|
131
451
|
return null;
|
|
452
|
+
case 'def':
|
|
453
|
+
// Link-reference definitions ([id]: https://…) are metadata, not
|
|
454
|
+
// visible content — emit nothing (was dumping raw text).
|
|
455
|
+
return null;
|
|
132
456
|
default:
|
|
133
|
-
//
|
|
134
|
-
// nothing is silently dropped.
|
|
135
|
-
|
|
457
|
+
// html / footnotes / etc. — fall back to RAW markdown source so
|
|
458
|
+
// nothing is silently dropped. (`tok.text` is undefined for several
|
|
459
|
+
// token types; `tok.raw` always holds the matched source.)
|
|
460
|
+
return (_jsx(Box, { marginBottom: 1, children: _jsx(Text, { dimColor: true, children: tok.raw ?? tok.text ?? '' }) }, key));
|
|
136
461
|
}
|
|
137
462
|
}
|
|
138
|
-
/** Render arbitrary markdown source as Ink components.
|
|
139
|
-
|
|
463
|
+
/** Render arbitrary markdown source as Ink components. `width` is the
|
|
464
|
+
* available terminal column count for this block (used to decide table
|
|
465
|
+
* grid vs. record layout); defaults to the current stdout width. */
|
|
466
|
+
export function Markdown({ source, width }) {
|
|
140
467
|
// Empty body: just nothing.
|
|
141
468
|
if (!source)
|
|
142
469
|
return _jsx(Text, {});
|
|
470
|
+
const cols = width ?? process.stdout?.columns ?? 80;
|
|
143
471
|
let tokens;
|
|
144
472
|
try {
|
|
145
473
|
tokens = marked.lexer(source);
|
|
@@ -149,6 +477,6 @@ export function Markdown({ source }) {
|
|
|
149
477
|
// mid-stream content with unbalanced backticks).
|
|
150
478
|
return _jsx(Text, { children: source });
|
|
151
479
|
}
|
|
152
|
-
return _jsx(_Fragment, { children: tokens.map((t, i) => renderBlock(t, `b-${i}
|
|
480
|
+
return _jsx(_Fragment, { children: tokens.map((t, i) => renderBlock(t, `b-${i}`, cols)) });
|
|
153
481
|
}
|
|
154
482
|
//# sourceMappingURL=markdown.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../src/cli-ui/tui/markdown.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAI/B,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAU,CAAA;AAErF,oEAAoE;AACpE,qEAAqE;AACrE,8BAA8B;AAC9B,MAAM,QAAQ,GAA2B;IACvC,EAAE,EAAE,4NAA4N;IAChO,EAAE,EAAE,uSAAuS;IAC3S,EAAE,EAAE,wLAAwL;IAC5L,EAAE,EAAE,gIAAgI;IACpI,IAAI,EAAE,gIAAgI;IACtI,EAAE,EAAE,gKAAgK;CACrK,CAAA;AAOD,yEAAyE;AACzE,mEAAmE;AACnE,oDAAoD;AACpD,MAAM,YAAY,GAA2B;IAC3C,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IACvC,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI;IAC3B,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI;IAC3B,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI;IAClC,MAAM,EAAE,IAAI;CACb,CAAA;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,IAAa;IAChD,MAAM,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,CAAA;IAC9B,MAAM,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACvD,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAC9C,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IAChC,MAAM,KAAK,GAAsB,EAAE,CAAA;IACnC,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,yDAAyD;IACzD,EAAE,CAAC,SAAS,GAAG,CAAC,CAAA;IAChB,IAAI,CAAyB,CAAA;IAC7B,+EAA+E;IAC/E,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACnE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;QAC3C,IAAI,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IAC9B,CAAC;IACD,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC9D,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,SAAS,CAAC,IAA6B;IAC9C,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IACxC,IAAI,IAAI,KAAK,QAAQ;QAAG,OAAO,OAAO,CAAA;IACtC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,MAAM,CAAA;IACrC,IAAI,IAAI,KAAK,QAAQ;QAAG,OAAO,QAAQ,CAAA;IACvC,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,QAAQ,CAAC,GAAU,EAAE,MAAc;IAC1C,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,EAAE,CAAA;IACrC,OAAO,GAAG,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAA;AAClE,CAAC;AAED,SAAS,YAAY,CAAC,MAA2B,EAAE,SAAiB;IAClE,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAA;IACtB,MAAM,GAAG,GAAsB,EAAE,CAAA;IACjC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACxB,MAAM,CAAC,GAAG,GAAG,SAAS,IAAI,CAAC,EAAE,CAAA;QAC7B,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,MAAM;gBACT,GAAG,CAAC,IAAI,CAAC,KAAC,IAAI,cAAU,GAAG,CAAC,IAAI,IAAI,EAAE,IAAlB,CAAC,CAAyB,CAAC,CAAA;gBAC/C,MAAK;YACP,KAAK,QAAQ;gBACX,GAAG,CAAC,IAAI,CAAC,KAAC,IAAI,IAAS,IAAI,kBAAE,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,IAApC,CAAC,CAA2C,CAAC,CAAA;gBACjE,MAAK;YACP,KAAK,IAAI;gBACP,GAAG,CAAC,IAAI,CAAC,KAAC,IAAI,IAAS,MAAM,kBAAE,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,IAAtC,CAAC,CAA6C,CAAC,CAAA;gBACnE,MAAK;YACP,KAAK,KAAK;gBACR,GAAG,CAAC,IAAI,CAAC,KAAC,IAAI,IAAS,aAAa,kBAAE,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,IAA7C,CAAC,CAAoD,CAAC,CAAA;gBAC1E,MAAK;YACP,KAAK,UAAU;gBACb,GAAG,CAAC,IAAI,CAAC,MAAC,IAAI,IAAS,KAAK,EAAC,MAAM,kBAAG,GAAG,CAAC,IAAI,IAAI,EAAE,UAAhC,CAAC,CAAwC,CAAC,CAAA;gBAC9D,MAAK;YACP,KAAK,MAAM;gBACT,GAAG,CAAC,IAAI,CACN,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,SAAS,kBAAE,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAQ,EACpD,MAAC,IAAI,IAAC,QAAQ,yBAAI,GAAG,CAAC,IAAI,IAAI,EAAE,SAAS,KAFhC,CAAC,CAGL,CACR,CAAA;gBACD,MAAK;YACP,KAAK,IAAI;gBACP,GAAG,CAAC,IAAI,CAAC,KAAC,IAAI,cAAU,IAAI,IAAR,CAAC,CAAe,CAAC,CAAA;gBACrC,MAAK;YACP;gBACE,GAAG,CAAC,IAAI,CAAC,KAAC,IAAI,cAAU,GAAG,CAAC,IAAI,IAAI,EAAE,IAAlB,CAAC,CAAyB,CAAC,CAAA;QACnD,CAAC;IACH,CAAC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,WAAW,CAAC,GAAU,EAAE,GAAW;IAC1C,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YACvE,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,GAAG,CAAA;YAC/C,OAAO,CACL,MAAC,GAAG,IAAW,YAAY,EAAE,CAAC,aAC5B,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,YAAG,MAAM,GAAQ,EACxD,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,YAAG,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAQ,KAFvE,GAAG,CAGP,CACP,CAAA;QACH,CAAC;QACD,KAAK,WAAW;YACd,OAAO,CACL,KAAC,GAAG,IAAW,YAAY,EAAE,CAAC,YAC5B,KAAC,IAAI,cAAE,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAQ,IADpC,GAAG,CAEP,CACP,CAAA;QACH,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,IAAI,GAAI,GAAiC,CAAC,IAAI,IAAI,EAAE,CAAA;YAC1D,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,CAAA;YACjD,IAAI,MAAM,GAAG,CAAC,CAAA;YACd,OAAO,CACL,MAAC,GAAG,IAAW,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,EAAE,WAAW,EAAC,OAAO,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,aACtG,IAAI,IAAI,KAAC,IAAI,IAAC,QAAQ,kBAAE,IAAI,GAAQ,EACrC,KAAC,IAAI,cACF,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;4BACf,MAAM,KAAK,GAAG,MAAM,CAAA;4BACpB,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAA;4BACvB,OAAO,KAAC,IAAI,IAAwD,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,YAAG,CAAC,CAAC,IAAI,IAAnF,GAAG,CAAC,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAA2C,CAAA;wBAC/G,CAAC,CAAC,GACG,KARC,GAAG,CASP,CACP,CAAA;QACH,CAAC;QACD,KAAK,YAAY;YACf,OAAO,CACL,KAAC,GAAG,IAAW,YAAY,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,YACnD,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACpC,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,QAAQ,8BAAU,EACxB,KAAC,IAAI,IAAC,QAAQ,kBAAE,YAAY,CAAE,KAAe,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,GAAQ,KAFpE,QAAQ,CAAC,KAAc,EAAE,GAAG,CAAC,CAGjC,CACP,CAAC,IANM,GAAG,CAOP,CACP,CAAA;QACH,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,OAAO,GAAG,CAAC,CAAE,GAAqC,CAAC,OAAO,CAAA;YAChE,MAAM,KAAK,GAAG,CAAE,GAAmC,CAAC,KAAK,IAAI,EAAE,CAAY,CAAA;YAC3E,OAAO,CACL,KAAC,GAAG,IAAW,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,YAClD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;oBACrB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;oBAC5C,+DAA+D;oBAC/D,MAAM,UAAU,GAAI,IAAc,CAAC,MAAM,IAAI,EAAE,CAAA;oBAC/C,OAAO,CACL,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,QAAQ,kBAAE,MAAM,GAAQ,EAC9B,KAAC,IAAI,cAAE,YAAY,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,GAAQ,KAF9C,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAGvB,CACP,CAAA;gBACH,CAAC,CAAC,IAXM,GAAG,CAYP,CACP,CAAA;QACH,CAAC;QACD,KAAK,IAAI;YACP,OAAO,KAAC,GAAG,IAAW,YAAY,EAAE,CAAC,YAAE,KAAC,IAAI,IAAC,QAAQ,kBAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAQ,IAA5D,GAAG,CAA+D,CAAA;QACrF,KAAK,OAAO;YACV,OAAO,IAAI,CAAA;QACb;YACE,8DAA8D;YAC9D,+BAA+B;YAC/B,OAAO,CACL,KAAC,GAAG,IAAW,YAAY,EAAE,CAAC,YAC5B,KAAC,IAAI,IAAC,QAAQ,kBAAG,GAAa,CAAC,IAAI,IAAI,EAAE,GAAQ,IADzC,GAAG,CAEP,CACP,CAAA;IACL,CAAC;AACH,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,QAAQ,CAAC,EAAE,MAAM,EAAsB;IACrD,4BAA4B;IAC5B,IAAI,CAAC,MAAM;QAAE,OAAO,KAAC,IAAI,KAAG,CAAA;IAC5B,IAAI,MAAe,CAAA;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAY,CAAA;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,mEAAmE;QACnE,iDAAiD;QACjD,OAAO,KAAC,IAAI,cAAE,MAAM,GAAQ,CAAA;IAC9B,CAAC;IACD,OAAO,4BAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,GAAI,CAAA;AAC9D,CAAC"}
|
|
1
|
+
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../src/cli-ui/tui/markdown.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.test.d.ts","sourceRoot":"","sources":["../../../src/cli-ui/tui/markdown.test.tsx"],"names":[],"mappings":""}
|