@qwen-code/qwen-code 0.19.10 → 0.19.11-nightly.20260717.f8e6e8931
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/bundled/qc-helper/docs/configuration/settings.md +7 -6
- package/bundled/qc-helper/docs/features/approval-mode.md +2 -2
- package/bundled/qc-helper/docs/features/channels/dingtalk.md +30 -0
- package/bundled/qc-helper/docs/features/channels/overview.md +53 -17
- package/bundled/qc-helper/docs/features/channels/wecom.md +8 -7
- package/bundled/qc-helper/docs/features/sandbox.md +2 -0
- package/bundled/qc-helper/docs/qwen-serve-deploy-local.md +42 -7
- package/bundled/qc-helper/docs/qwen-serve.md +53 -46
- package/bundled/review/SKILL.md +163 -403
- package/chunks/{MaxSizedBox-67ODZ4SZ.js → MaxSizedBox-JGTP7YJQ.js} +13 -13
- package/chunks/{StandaloneSessionPicker-SIPBQT5Z.js → StandaloneSessionPicker-2XQDOYZ5.js} +27 -27
- package/chunks/{acpAgent-VPZJXLFX.js → acpAgent-RXRJA7GD.js} +1135 -373
- package/chunks/{agent-Z7NWL6XL.js → agent-UQP53UWQ.js} +10 -10
- package/chunks/{agent-headless-73HZ6ROQ.js → agent-headless-I52OXDCK.js} +10 -10
- package/chunks/{anthropicContentGenerator-56U3YCP2.js → anthropicContentGenerator-HBRXJSP4.js} +76 -14
- package/chunks/{artifact-tool-BWZZJ42H.js → artifact-tool-MIZLXBLF.js} +1 -1
- package/chunks/{askUserQuestion-WU3S5A5T.js → askUserQuestion-XMJVPNWM.js} +1 -1
- package/chunks/{bridge-XFKW6S7Q.js → bridge-3DVRNBSF.js} +14 -16
- package/chunks/{ca-C2JTT2N5.js → ca-CODEN7TD.js} +5 -0
- package/chunks/channel-worker-group-SOUWTFHC.js +21 -0
- package/chunks/{channel-worker-manager-5RWKSGEU.js → channel-worker-manager-LOVSV3WW.js} +34 -10
- package/chunks/{channel-worker-supervisor-PCDAZN4D.js → channel-worker-supervisor-XW6MHJBQ.js} +6 -4
- package/chunks/{chunk-BBNVFRGD.js → chunk-3DWIFU7L.js} +1 -1
- package/chunks/{chunk-ZQTZXVHP.js → chunk-3KSHYS4T.js} +4 -18
- package/chunks/{chunk-ZKMGAFYV.js → chunk-3LS57JZI.js} +1 -1
- package/chunks/{chunk-B5I2IIWY.js → chunk-46Y6SSQ7.js} +5 -5
- package/chunks/{chunk-GDQQRV43.js → chunk-4BJVSIS3.js} +2 -2
- package/chunks/{chunk-L37RC7MQ.js → chunk-4HTHLSIH.js} +1 -1
- package/chunks/{chunk-DPFBNG72.js → chunk-4UBEB74N.js} +1 -1
- package/chunks/{chunk-AAR5SGMD.js → chunk-4YR7FSAM.js} +7 -5
- package/chunks/{chunk-OATTJGPJ.js → chunk-5CNYZ7TN.js} +7 -7
- package/chunks/{chunk-JSJFKYWT.js → chunk-5VWYKIMW.js} +1 -1
- package/chunks/{chunk-6GETGQWP.js → chunk-5WWYHNAH.js} +39 -10
- package/chunks/{chunk-65N2J6V2.js → chunk-6ANLV27M.js} +2 -2
- package/chunks/{chunk-L62SEJWY.js → chunk-6RV42SFP.js} +4 -4
- package/chunks/{chunk-XXJKGHZV.js → chunk-6VMOP2Z7.js} +4 -4
- package/chunks/{chunk-URU5UEK6.js → chunk-6WGZDD67.js} +135 -68
- package/chunks/{chunk-7NAWTFVY.js → chunk-6WPJRYLZ.js} +2 -2
- package/chunks/chunk-6WVLHULT.js +59 -0
- package/chunks/{chunk-N6FXRR6P.js → chunk-7ZFXHKKZ.js} +1 -1
- package/chunks/{chunk-E67NFMF4.js → chunk-A2HWMJVO.js} +35 -1
- package/chunks/{chunk-4FMG7EDJ.js → chunk-AEKHQ3E5.js} +77 -11
- package/chunks/{chunk-WIASPMLX.js → chunk-AH3YAJU6.js} +22 -33
- package/chunks/{chunk-6GKMJPOC.js → chunk-AHAH5H6D.js} +3 -3
- package/chunks/{chunk-3XJFUTNM.js → chunk-AVAU67KP.js} +57 -10
- package/chunks/{chunk-LNUXFLLJ.js → chunk-BDHYJ2MM.js} +53 -5
- package/chunks/{chunk-P6LART6G.js → chunk-BTSE2DUP.js} +957 -122
- package/chunks/{chunk-7MJAZMXK.js → chunk-BZ5D7OVV.js} +28 -77
- package/chunks/{chunk-WDWJ4OQJ.js → chunk-CC2UASQ4.js} +3 -3
- package/chunks/{chunk-WLXYAKV7.js → chunk-D7KYA6EY.js} +3 -3
- package/chunks/{chunk-5LROA5W4.js → chunk-DD45XVOQ.js} +3 -3
- package/chunks/{chunk-H3FQOPPS.js → chunk-DOPUYNXO.js} +2 -2
- package/chunks/{chunk-SPUYQB4T.js → chunk-DPXB3XRN.js} +1 -1
- package/chunks/{chunk-XLIRF7IK.js → chunk-E7ECGLZW.js} +1 -1
- package/chunks/{chunk-RDRVMDWV.js → chunk-EMJJBXS7.js} +10 -10
- package/chunks/{chunk-TXY2C3D2.js → chunk-F333XEAU.js} +1 -1
- package/chunks/chunk-FEOZBUMT.js +77 -0
- package/chunks/{chunk-YYPXHMWO.js → chunk-FEYHXPZG.js} +4 -4
- package/chunks/{chunk-ZRKBI3DP.js → chunk-FNX3LGAK.js} +1 -1
- package/chunks/chunk-FXK3QMRD.js +140 -0
- package/chunks/{chunk-422XAKCK.js → chunk-G5ZKRK2E.js} +2 -2
- package/chunks/{chunk-DK33QJ3V.js → chunk-GCRFH57X.js} +732 -13
- package/chunks/{chunk-EQY6POVO.js → chunk-GLEJW7T2.js} +1 -1
- package/chunks/{chunk-FXMC7SL2.js → chunk-I6NOSIVF.js} +1 -1
- package/chunks/{chunk-VBRRNQB7.js → chunk-IHJRUIWN.js} +109 -22
- package/chunks/{chunk-F7NXQH4Y.js → chunk-IIXEI2VE.js} +1 -1
- package/chunks/{chunk-2UUAIFQO.js → chunk-JGUT3LWZ.js} +5 -0
- package/chunks/{chunk-5EBKKSBX.js → chunk-JY74T7PW.js} +1 -1
- package/chunks/chunk-KSZKSE23.js +226 -0
- package/chunks/{chunk-MO7O5722.js → chunk-KW46DBFM.js} +35 -2
- package/chunks/{chunk-TISZXPAX.js → chunk-L263ROM6.js} +1 -1
- package/chunks/chunk-LXXMOYPL.js +22 -0
- package/chunks/{chunk-YX4LLZ3D.js → chunk-NABT4VOY.js} +109 -35
- package/chunks/{chunk-W34A5MJH.js → chunk-NROLDLP4.js} +1 -1
- package/chunks/{chunk-V7EQTZYR.js → chunk-O3WCEZEN.js} +191 -44
- package/chunks/{chunk-K4PZ5F5T.js → chunk-OWT2CAEQ.js} +1 -1
- package/chunks/{chunk-4YWLED2A.js → chunk-PNCWEDF6.js} +7 -4
- package/chunks/{chunk-WDW64OW3.js → chunk-PSDTLRAV.js} +5 -5
- package/chunks/{chunk-7R4DPSRA.js → chunk-R3VWUU2E.js} +1 -1
- package/chunks/{chunk-K7CRWKOE.js → chunk-R6AO7HBQ.js} +4617 -4012
- package/chunks/{chunk-6OATMEYN.js → chunk-RTV5TUYB.js} +12 -4
- package/chunks/{chunk-6W6DI34P.js → chunk-SE6GSFAO.js} +159 -2
- package/chunks/{chunk-WTSXKLG5.js → chunk-SUARMD4Q.js} +1 -1
- package/chunks/chunk-T4TZQJ7W.js +48 -0
- package/chunks/{chunk-LTNI523B.js → chunk-T7CZYIAU.js} +28 -5
- package/chunks/{chunk-3MX7D6QN.js → chunk-TIOE2OPE.js} +32 -4
- package/chunks/{chunk-TTUO4DNG.js → chunk-UF6ZTWU5.js} +75 -710
- package/chunks/{chunk-Q5GLXH5Q.js → chunk-UJG4VV2O.js} +5 -5
- package/chunks/{chunk-CJFNEBYB.js → chunk-VFEZWI6F.js} +1 -1
- package/chunks/{chunk-UFOKA4PR.js → chunk-VHCSIMTF.js} +114 -4
- package/chunks/{chunk-TQBODCFD.js → chunk-VRR65QYW.js} +250 -2
- package/chunks/{chunk-CUUXANEQ.js → chunk-W6J7RSCK.js} +6 -1
- package/chunks/{chunk-YHN5SUIJ.js → chunk-W7H223ZZ.js} +1 -1
- package/chunks/{chunk-WX6SD4IQ.js → chunk-WTNZ6DXB.js} +1 -1
- package/chunks/{chunk-GGJII3FM.js → chunk-WZJELXEU.js} +92 -3
- package/chunks/{chunk-OFEVHGVU.js → chunk-X5HZX4EP.js} +9 -11
- package/chunks/{chunk-KSO42X3Z.js → chunk-X6YQWCIJ.js} +21 -2
- package/chunks/{chunk-7L4XBYVW.js → chunk-XK42MWWO.js} +9 -2
- package/chunks/{chunk-X362TMXZ.js → chunk-XQDPCQ3A.js} +7 -5
- package/chunks/{chunk-YU56QGXX.js → chunk-Y3TNSHKF.js} +1 -1
- package/chunks/{chunk-HHEFI4RP.js → chunk-YOJGIRTD.js} +714 -109
- package/chunks/{chunk-CEW4HDPK.js → chunk-ZK4AMPKI.js} +2459 -350
- package/chunks/{chunk-SXU3KKNI.js → chunk-ZQIYGQCG.js} +251 -54
- package/chunks/{computer-use-IYTX45WA.js → computer-use-LTW3VB6L.js} +10 -10
- package/chunks/{config-utils-CFT33LTP.js → config-utils-IQQT3GCI.js} +3 -3
- package/chunks/{contextCommand-272V77WU.js → contextCommand-GLMC6CTP.js} +12 -12
- package/chunks/{create-sub-session-WNX2OQVX.js → create-sub-session-EAB2U5XW.js} +1 -1
- package/chunks/{create-sub-session-CBJMQLYP.js → create-sub-session-YMWQAWSN.js} +10 -10
- package/chunks/{cron-create-36TIFKRT.js → cron-create-GMVKSXZT.js} +1 -1
- package/chunks/{cron-delete-OQD3WULU.js → cron-delete-VDZKUAVK.js} +1 -1
- package/chunks/{cron-list-4533T2FH.js → cron-list-UG7C7RAR.js} +1 -1
- package/chunks/{daemon-RNGFPMAB.js → daemon-PRB64RP5.js} +303 -71
- package/chunks/{daemon-status-provider-L4STG5VO.js → daemon-status-provider-5OMM5JHF.js} +19 -20
- package/chunks/{de-2VCDRDGU.js → de-NOXPCSYN.js} +5 -0
- package/chunks/{dist-ERCPDVA6.js → dist-4WCQEZIN.js} +4 -51
- package/chunks/{dist-MOEC47TR.js → dist-DOPL5LSQ.js} +1 -1
- package/chunks/{dist-JZE7F6YR.js → dist-GXJVCOS7.js} +1 -1
- package/chunks/{dist-PHEPJLXD.js → dist-PX2ERZ6I.js} +2 -2
- package/chunks/{dist-HNN7DR2L.js → dist-V2YVLYOW.js} +58 -30
- package/chunks/{dist-3V3ZV6ML.js → dist-VYWUKURL.js} +1 -1
- package/chunks/{earlyInputCapture-EN4BRREQ.js → earlyInputCapture-A3WSRN4T.js} +10 -10
- package/chunks/{edit-OMAF2QDR.js → edit-7PG4AH27.js} +10 -10
- package/chunks/{en-NJCA3TAA.js → en-JFVULHTB.js} +6 -0
- package/chunks/{enter-worktree-BBZX52HG.js → enter-worktree-QUSB44RE.js} +10 -10
- package/chunks/{enterPlanMode-5NNFMBUY.js → enterPlanMode-NVSIEL7X.js} +10 -10
- package/chunks/{environment-7TEWMJYN.js → environment-AHHXHQTI.js} +12 -12
- package/chunks/{errors-I4VKVX3F.js → errors-NSWSRXC7.js} +12 -12
- package/chunks/{exit-worktree-FUWRJI33.js → exit-worktree-FXYEYHPL.js} +10 -10
- package/chunks/{exitPlanMode-IHCJ5EEI.js → exitPlanMode-JI5GK3F6.js} +10 -10
- package/chunks/{fast-path-ZA57TOH4.js → fast-path-X7EVDLKZ.js} +2 -2
- package/chunks/{fr-5F3E7WKD.js → fr-HVFNU42H.js} +5 -0
- package/chunks/{gemini-UOAKVXBG.js → gemini-YRLHY5KS.js} +162 -206
- package/chunks/{geminiContentGenerator-G6UCE6MW.js → geminiContentGenerator-SPLFPV5E.js} +1 -1
- package/chunks/{glob-4GJQ2UFF.js → glob-WASUBCSA.js} +10 -10
- package/chunks/{grep-5QSYXF2E.js → grep-DUVG3NGA.js} +10 -10
- package/chunks/{handleAutoUpdate-ULHNWL6R.js → handleAutoUpdate-NGE5AQ2N.js} +14 -14
- package/chunks/{i18n-CYDUTF6F.js → i18n-QNVR36NB.js} +11 -11
- package/chunks/{initializer-NRFKUGIO.js → initializer-ZY7ORPMH.js} +15 -15
- package/chunks/{installationInfo-WELKRHHE.js → installationInfo-4R75MFTB.js} +11 -11
- package/chunks/{ja-66J6B53L.js → ja-PY5AF544.js} +5 -0
- package/chunks/{list-JVDXEG2E.js → list-36JCMZRS.js} +18 -18
- package/chunks/{loadedSettingsAdapter-WAM4VUTG.js → loadedSettingsAdapter-PQIOJUSJ.js} +15 -15
- package/chunks/{loop-wakeup-MVUKDVCP.js → loop-wakeup-QXWZSCYM.js} +2 -2
- package/chunks/{ls-RXNIAQDE.js → ls-2OUTG3IZ.js} +1 -1
- package/chunks/{lsp-HB5LM5IL.js → lsp-4VMNXZW6.js} +1 -1
- package/chunks/{mcp-YHOZN3ZM.js → mcp-QXY6XA6H.js} +15 -15
- package/chunks/{monitor-R7XZPJHQ.js → monitor-AVEKRSY3.js} +12 -11
- package/chunks/{nonInteractiveCli-NSOB6D74.js → nonInteractiveCli-YWIBKX4M.js} +50 -50
- package/chunks/{notebook-edit-6RNKE2L2.js → notebook-edit-4SBTJX72.js} +10 -10
- package/chunks/{openaiContentGenerator-XNS5S64I.js → openaiContentGenerator-4EBAO7LR.js} +8 -8
- package/chunks/{pidfile-XE4RRR2P.js → pidfile-JMIUPXSU.js} +10 -10
- package/chunks/processUtils-EOINMEIH.js +29 -0
- package/chunks/{pt-TFZO5Y6T.js → pt-A3PRQXMU.js} +5 -0
- package/chunks/{qwenContentGenerator-APDPJ3VN.js → qwenContentGenerator-M7UBL3JS.js} +12 -12
- package/chunks/{read-file-XSUWXSR7.js → read-file-DXSEFHCV.js} +5 -5
- package/chunks/{read-mcp-resource-6LRTZKXI.js → read-mcp-resource-JUFHCKSC.js} +1 -1
- package/chunks/{record-artifact-PMDTY4OS.js → record-artifact-DWSMBXYY.js} +1 -1
- package/chunks/{ripGrep-APB3CDMU.js → ripGrep-VTRVFMDJ.js} +10 -10
- package/chunks/{ru-4L4LFHIT.js → ru-IBCWUTOC.js} +5 -0
- package/chunks/{run-qwen-serve-NWTGPERT.js → run-qwen-serve-P7WQDZAS.js} +59 -38
- package/chunks/{runtime-EIO3NQKR.js → runtime-UHYO6JGN.js} +19 -19
- package/chunks/{scheduler-JJDZBDRN.js → scheduler-WTK7ZLV5.js} +10 -10
- package/chunks/{send-message-SR4WSXP2.js → send-message-JZ752NWD.js} +2 -2
- package/chunks/{serve-WTIPB3EI.js → serve-AG2AOG56.js} +15 -15
- package/chunks/{server-NJPHQHLH.js → server-G5MM2BRI.js} +1157 -225
- package/chunks/{session-O4AO7FTS.js → session-NUAGEMVS.js} +51 -51
- package/chunks/{settings-HQNDK7TG.js → settings-VQA5PR2M.js} +14 -14
- package/chunks/{shell-UIXM6PWG.js → shell-X33RWGLP.js} +12 -10
- package/chunks/{skill-3XMB4ULV.js → skill-PHSU2OPP.js} +5 -5
- package/chunks/{spawnChannel-3R632QRM.js → spawnChannel-D6TZN4W7.js} +12 -13
- package/chunks/{src-USZKPUOC.js → src-6OJFUPTL.js} +95 -34
- package/chunks/{standalone-update-L5XW3D7K.js → standalone-update-ZARRW44Y.js} +12 -12
- package/chunks/{startInteractiveUI-CPZOL2WB.js → startInteractiveUI-C6IZRTF3.js} +176 -158
- package/chunks/{syntheticOutput-YKFNUQZD.js → syntheticOutput-LELY6HAI.js} +2 -2
- package/chunks/{task-create-NUFOHU53.js → task-create-QY3BIMNM.js} +3 -3
- package/chunks/{task-list-Z2IKQY3S.js → task-list-D2U47WBJ.js} +1 -1
- package/chunks/{task-stop-KQFIVQTJ.js → task-stop-N6E5IYLH.js} +1 -1
- package/chunks/{task-update-HKADXSTD.js → task-update-HJCQILLB.js} +3 -3
- package/chunks/{team-create-XXPRF3IQ.js → team-create-H434NQP2.js} +10 -10
- package/chunks/{team-delete-SDNTGZLG.js → team-delete-RCWYDRF4.js} +1 -1
- package/chunks/{team-plan-approval-EOTTKHDW.js → team-plan-approval-IIOHXZU6.js} +10 -10
- package/chunks/{theme-manager-P6UITO2L.js → theme-manager-IEOPHMX6.js} +10 -10
- package/chunks/{todoWrite-YNXB27GB.js → todoWrite-FKCGATPJ.js} +1 -1
- package/chunks/{tool-search-DDNGK2LR.js → tool-search-WIIEDALL.js} +6 -6
- package/chunks/{total-session-admission-PL5N7DNY.js → total-session-admission-WU3DORRW.js} +15 -17
- package/chunks/{trustedFolders-C5LMF3UR.js → trustedFolders-JVUTUAJ3.js} +11 -11
- package/chunks/update-relaunch-X5EQKCH5.js +87 -0
- package/chunks/{updateCheck-QTVVISH7.js → updateCheck-TGO2X735.js} +14 -12
- package/chunks/{validateNonInterActiveAuth-RY4RKBQG.js → validateNonInterActiveAuth-2MEUL2ME.js} +46 -46
- package/chunks/{version-U45RYOSD.js → version-KBGQKZWV.js} +1 -1
- package/chunks/{web-fetch-ZSPR3PRR.js → web-fetch-CFCWTCAP.js} +2 -3
- package/chunks/{workflow-TCIAQYOA.js → workflow-PAOSF4CG.js} +11 -11
- package/chunks/{workspace-providers-status-I3G2HYLY.js → workspace-providers-status-AYHJYSVO.js} +18 -18
- package/chunks/{workspace-registration-store-IH5GLZ6Y.js → workspace-registration-store-GZMR53QL.js} +1 -1
- package/chunks/{workspace-registry-QEKBELIX.js → workspace-registry-C2IXZWPF.js} +15 -17
- package/chunks/{workspace-service-ORKHGLP3.js → workspace-service-KDDAW33F.js} +20 -21
- package/chunks/{workspace-skills-status-D7QCNDYY.js → workspace-skills-status-WWEZBZXY.js} +16 -16
- package/chunks/{write-file-JGRQR5VM.js → write-file-ACN3TAIX.js} +10 -10
- package/chunks/{zh-FSAH32JB.js → zh-PAUNIMHQ.js} +6 -0
- package/chunks/{zh-TW-D2YIE2LO.js → zh-TW-GNEUIUFF.js} +6 -0
- package/cli-entry.js +92 -8
- package/cli.js +11 -11
- package/locales/ca.js +10 -0
- package/locales/de.js +10 -0
- package/locales/en.js +11 -0
- package/locales/fr.js +10 -0
- package/locales/ja.js +10 -0
- package/locales/pt.js +10 -0
- package/locales/ru.js +10 -0
- package/locales/zh-TW.js +11 -0
- package/locales/zh.js +11 -0
- package/package.json +3 -3
- package/web-shell/assets/{arc-CUeDlxvE.js → arc-Blc5_CnD.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-PiUszkQA.js → architectureDiagram-3BPJPVTR-Dyv1BvGP.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-s2wYSO7e.js → blockDiagram-GPEHLZMM-CVAb8DyB.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-DyLxZoz9.js → c4Diagram-AAUBKEIU-ClHPb_6S.js} +1 -1
- package/web-shell/assets/channel-DkPTtnGS.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-Dsdai7Tk.js → chunk-2J33WTMH-Dad9g3ZA.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-DEosOjV7.js → chunk-4BX2VUAB-IJJSSdDs.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-sNsRLTXf.js → chunk-55IACEB6-DRcc-Hl9.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-DkRNZzmh.js → chunk-727SXJPM-DOCFB-6a.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-BrsRNpzd.js → chunk-AQP2D5EJ-CRZnSjHp.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-CI039lpl.js → chunk-FMBD7UC4-BwUI4Yes.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-M-pkeIfu.js → chunk-ND2GUHAM-DLy8doxd.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-C4ckGNbH.js → chunk-QZHKN3VN-Bhz7iysj.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-DBdPU8ix.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-DBdPU8ix.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-BciKUAFq.js → cose-bilkent-S5V4N54A-jT1e8KzN.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-C1nTSgU6.js → dagre-BM42HDAG-C1veApQk.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-BDPNWr1m.js → diagram-2AECGRRQ-C_NOwKeT.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-CNFhTszL.js → diagram-5GNKFQAL-Bigfuz1r.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-CjPa4p5a.js → diagram-KO2AKTUF-CpXltPpU.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-ZzPykSyG.js → diagram-LMA3HP47-DYawbYbH.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-0UVtZ9A4.js → diagram-OG6HWLK6-D2t-ttd1.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-CajDZCat.js → erDiagram-TEJ5UH35-Buc53PB5.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-BRuFBIvL.js → flowDiagram-I6XJVG4X-DwdFsCN7.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-BevGmJqG.js → ganttDiagram-6RSMTGT7-XhiEKGoP.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-DvPMpBMb.js → gitGraphDiagram-PVQCEYII-D6We014a.js} +1 -1
- package/web-shell/assets/index-BctAmeF3.js +1143 -0
- package/web-shell/assets/{index-DzHwQkQq.js → index-CAWqS-bZ.js} +1 -1
- package/web-shell/assets/index-DLyhlZZO.css +5 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-Oixn7tA9.js → infoDiagram-5YYISTIA-C_iugRHQ.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-BgKpeg-j.js → ishikawaDiagram-YF4QCWOH-CAn9Kaix.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-74mwxIaA.js → journeyDiagram-JHISSGLW-BjDYOkEB.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-D4D6cEqA.js → kanban-definition-UN3LZRKU-Br_oI3Ob.js} +1 -1
- package/web-shell/assets/{linear-atZRE_L2.js → linear-BqnWHE9E.js} +1 -1
- package/web-shell/assets/{mermaid.core-KKudX-JC.js → mermaid.core-CT-sofSb.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-CMCej9yG.js → mindmap-definition-RKZ34NQL-BbvrZR4B.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-nhx40X7q.js → pieDiagram-4H26LBE5-gAwi3h_Q.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-CUmVcN3M.js → quadrantDiagram-W4KKPZXB-CONvBIuO.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-C_vyEwyy.js → requirementDiagram-4Y6WPE33-lpkrcy1e.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-DU6G4VWR.js → sankeyDiagram-5OEKKPKP-Bk6FJHqb.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DdeRR_KJ.js → sequenceDiagram-3UESZ5HK-B9b9bBzt.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-C6iCI8ps.js → stateDiagram-AJRCARHV-JqBGC-S3.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-B_w4fDnm.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-B_Ea8Cb7.js → timeline-definition-PNZ67QCA-CCCceXDP.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-BPUVZEJA.js → vennDiagram-CIIHVFJN-EHRnmZ09.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-BWEj0lKY.js → wardley-L42UT6IY-CYIcHx3_.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-BvDsdIQw.js → wardleyDiagram-YWT4CUSO-B81AuYRl.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-crz0QhF_.js → xychartDiagram-2RQKCTM6-DOQ6E3z7.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/channel-worker-group-K7QKH6IG.js +0 -13
- package/chunks/chunk-B7NUUEXC.js +0 -311
- package/chunks/chunk-CARU2RR2.js +0 -24
- package/chunks/chunk-GYTKQYDB.js +0 -23
- package/chunks/chunk-LQU7EVFA.js +0 -30
- package/chunks/chunk-OCPBI7J5.js +0 -18
- package/chunks/chunk-OJAMDVF5.js +0 -66
- package/chunks/chunk-TEGEBB2I.js +0 -122
- package/web-shell/assets/channel-DkuJJ0qd.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-CwqHc0TB.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CwqHc0TB.js +0 -1
- package/web-shell/assets/index-Cnvv4VcI.css +0 -5
- package/web-shell/assets/index-D1Uyklxa.js +0 -1088
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-C0_6nR6C.js +0 -1
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
// Force strict mode and setup for ESM
|
|
2
2
|
"use strict";
|
|
3
|
-
import {
|
|
4
|
-
relaunchApp
|
|
5
|
-
} from "./chunk-LQU7EVFA.js";
|
|
6
|
-
import {
|
|
7
|
-
MINIMUM_MAX_HEIGHT,
|
|
8
|
-
MaxSizedBox
|
|
9
|
-
} from "./chunk-H3FQOPPS.js";
|
|
10
3
|
import {
|
|
11
4
|
CODE_FENCE_RE,
|
|
12
5
|
TABLE_MAX_ROW_LINES,
|
|
@@ -20,16 +13,17 @@ import {
|
|
|
20
13
|
getCommandSubcommandNames,
|
|
21
14
|
splitMarkdownTableRow,
|
|
22
15
|
useSessionStats
|
|
23
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-6VMOP2Z7.js";
|
|
24
17
|
import {
|
|
25
18
|
Colors,
|
|
26
19
|
RowMouseController,
|
|
27
20
|
SettingsContext,
|
|
21
|
+
layoutRowForEvent,
|
|
28
22
|
measureElementPosition,
|
|
29
23
|
useMouseEvents,
|
|
30
24
|
useSettings,
|
|
31
25
|
useTerminalSize
|
|
32
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-G5ZKRK2E.js";
|
|
33
27
|
import {
|
|
34
28
|
CompactToolGroupDisplay,
|
|
35
29
|
SCREEN_READER_MODEL_PREFIX,
|
|
@@ -47,12 +41,18 @@ import {
|
|
|
47
41
|
calculateErrorRate,
|
|
48
42
|
computeDiffColumnWidths,
|
|
49
43
|
computeSessionStats,
|
|
44
|
+
estimateCompactToolGroupHeight,
|
|
50
45
|
getSystemInfoFields,
|
|
51
46
|
isCollapsibleTool,
|
|
52
47
|
levelLabel,
|
|
53
48
|
useKeypress,
|
|
49
|
+
wrapAnsi,
|
|
54
50
|
wrapForMultiplexer
|
|
55
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-GCRFH57X.js";
|
|
52
|
+
import {
|
|
53
|
+
MINIMUM_MAX_HEIGHT,
|
|
54
|
+
MaxSizedBox
|
|
55
|
+
} from "./chunk-DOPUYNXO.js";
|
|
56
56
|
import {
|
|
57
57
|
Box_default,
|
|
58
58
|
Static,
|
|
@@ -62,7 +62,10 @@ import {
|
|
|
62
62
|
theme,
|
|
63
63
|
use_is_screen_reader_enabled_default,
|
|
64
64
|
use_stdin_default
|
|
65
|
-
} from "./chunk-
|
|
65
|
+
} from "./chunk-OWT2CAEQ.js";
|
|
66
|
+
import {
|
|
67
|
+
relaunchApp
|
|
68
|
+
} from "./chunk-6WVLHULT.js";
|
|
66
69
|
import {
|
|
67
70
|
isTerminalGoalStatusKind
|
|
68
71
|
} from "./chunk-7X7TEQNX.js";
|
|
@@ -85,10 +88,7 @@ import {
|
|
|
85
88
|
stripUnsafeCharacters,
|
|
86
89
|
toCodePoints,
|
|
87
90
|
wrapToVisualLines
|
|
88
|
-
} from "./chunk-
|
|
89
|
-
import {
|
|
90
|
-
eastAsianWidth
|
|
91
|
-
} from "./chunk-QHTIBUWB.js";
|
|
91
|
+
} from "./chunk-SUARMD4Q.js";
|
|
92
92
|
import {
|
|
93
93
|
formatDuration,
|
|
94
94
|
formatMemoryUsage,
|
|
@@ -101,18 +101,18 @@ import {
|
|
|
101
101
|
} from "./chunk-57OAHC2Y.js";
|
|
102
102
|
import {
|
|
103
103
|
createLoadedSettingsAdapter
|
|
104
|
-
} from "./chunk-
|
|
104
|
+
} from "./chunk-NROLDLP4.js";
|
|
105
105
|
import {
|
|
106
106
|
getPersistScopeForModelSelection
|
|
107
|
-
} from "./chunk-
|
|
107
|
+
} from "./chunk-5WWYHNAH.js";
|
|
108
108
|
import {
|
|
109
109
|
getCurrentLanguage,
|
|
110
110
|
localizeToolDisplayName,
|
|
111
111
|
t
|
|
112
|
-
} from "./chunk-
|
|
112
|
+
} from "./chunk-EMJJBXS7.js";
|
|
113
113
|
import {
|
|
114
114
|
isWorkspaceTrusted
|
|
115
|
-
} from "./chunk-
|
|
115
|
+
} from "./chunk-PNCWEDF6.js";
|
|
116
116
|
import {
|
|
117
117
|
ALL_PROVIDERS,
|
|
118
118
|
IdeClient,
|
|
@@ -131,18 +131,22 @@ import {
|
|
|
131
131
|
isValidEditorType,
|
|
132
132
|
resolveBaseUrl,
|
|
133
133
|
resolveMetadataKey,
|
|
134
|
-
resolveOwnsModel
|
|
134
|
+
resolveOwnsModel
|
|
135
|
+
} from "./chunk-R6AO7HBQ.js";
|
|
136
|
+
import {
|
|
135
137
|
stripAnsi
|
|
136
|
-
} from "./chunk-
|
|
138
|
+
} from "./chunk-T4TZQJ7W.js";
|
|
137
139
|
import {
|
|
138
140
|
MAIN_SOURCE,
|
|
139
|
-
|
|
140
|
-
|
|
141
|
+
formatVisionBridgeNoticeDisplay,
|
|
142
|
+
getMCPServerStatus,
|
|
143
|
+
isVisionBridgeNoticeDisplay
|
|
144
|
+
} from "./chunk-BTSE2DUP.js";
|
|
141
145
|
import {
|
|
142
146
|
ToolDisplayNames,
|
|
143
147
|
ToolNames,
|
|
144
148
|
ToolNamesMigration
|
|
145
|
-
} from "./chunk-
|
|
149
|
+
} from "./chunk-JGUT3LWZ.js";
|
|
146
150
|
import {
|
|
147
151
|
createDebugLogger,
|
|
148
152
|
escapePath,
|
|
@@ -2534,679 +2538,6 @@ __name(colorizeCode, "colorizeCode");
|
|
|
2534
2538
|
// packages/cli/src/ui/utils/TableRenderer.tsx
|
|
2535
2539
|
init_esbuild_shims();
|
|
2536
2540
|
|
|
2537
|
-
// packages/cli/node_modules/wrap-ansi/index.js
|
|
2538
|
-
init_esbuild_shims();
|
|
2539
|
-
|
|
2540
|
-
// packages/cli/node_modules/wrap-ansi/node_modules/string-width/index.js
|
|
2541
|
-
init_esbuild_shims();
|
|
2542
|
-
var segmenter = new Intl.Segmenter();
|
|
2543
|
-
var zeroWidthClusterRegex = new RegExp("^(?:\\p{Default_Ignorable_Code_Point}|\\p{Control}|\\p{Format}|\\p{Mark}|\\p{Surrogate})+$", "v");
|
|
2544
|
-
var leadingNonPrintingRegex = new RegExp("^[\\p{Default_Ignorable_Code_Point}\\p{Control}\\p{Format}\\p{Mark}\\p{Surrogate}]+", "v");
|
|
2545
|
-
var rgiEmojiRegex = new RegExp("^\\p{RGI_Emoji}$", "v");
|
|
2546
|
-
var unqualifiedKeycapRegex = /^[\d#*]\u20E3$/;
|
|
2547
|
-
var extendedPictographicRegex = new RegExp("\\p{Extended_Pictographic}", "gu");
|
|
2548
|
-
function isDoubleWidthNonRgiEmojiSequence(segment) {
|
|
2549
|
-
if (segment.length > 50) {
|
|
2550
|
-
return false;
|
|
2551
|
-
}
|
|
2552
|
-
if (unqualifiedKeycapRegex.test(segment)) {
|
|
2553
|
-
return true;
|
|
2554
|
-
}
|
|
2555
|
-
if (segment.includes("\u200D")) {
|
|
2556
|
-
const pictographics = segment.match(extendedPictographicRegex);
|
|
2557
|
-
return pictographics !== null && pictographics.length >= 2;
|
|
2558
|
-
}
|
|
2559
|
-
return false;
|
|
2560
|
-
}
|
|
2561
|
-
__name(isDoubleWidthNonRgiEmojiSequence, "isDoubleWidthNonRgiEmojiSequence");
|
|
2562
|
-
function baseVisible(segment) {
|
|
2563
|
-
return segment.replace(leadingNonPrintingRegex, "");
|
|
2564
|
-
}
|
|
2565
|
-
__name(baseVisible, "baseVisible");
|
|
2566
|
-
function isZeroWidthCluster(segment) {
|
|
2567
|
-
return zeroWidthClusterRegex.test(segment);
|
|
2568
|
-
}
|
|
2569
|
-
__name(isZeroWidthCluster, "isZeroWidthCluster");
|
|
2570
|
-
function isHangulLeadingJamo(codePoint) {
|
|
2571
|
-
return codePoint >= 4352 && codePoint <= 4447 || codePoint >= 43360 && codePoint <= 43388;
|
|
2572
|
-
}
|
|
2573
|
-
__name(isHangulLeadingJamo, "isHangulLeadingJamo");
|
|
2574
|
-
function isHangulVowelJamo(codePoint) {
|
|
2575
|
-
return codePoint >= 4448 && codePoint <= 4519 || codePoint >= 55216 && codePoint <= 55238;
|
|
2576
|
-
}
|
|
2577
|
-
__name(isHangulVowelJamo, "isHangulVowelJamo");
|
|
2578
|
-
function isHangulTrailingJamo(codePoint) {
|
|
2579
|
-
return codePoint >= 4520 && codePoint <= 4607 || codePoint >= 55243 && codePoint <= 55291;
|
|
2580
|
-
}
|
|
2581
|
-
__name(isHangulTrailingJamo, "isHangulTrailingJamo");
|
|
2582
|
-
function isHangulJamo(codePoint) {
|
|
2583
|
-
return isHangulLeadingJamo(codePoint) || isHangulVowelJamo(codePoint) || isHangulTrailingJamo(codePoint);
|
|
2584
|
-
}
|
|
2585
|
-
__name(isHangulJamo, "isHangulJamo");
|
|
2586
|
-
function hangulClusterWidth(visibleSegment, eastAsianWidthOptions) {
|
|
2587
|
-
const codePoints = [];
|
|
2588
|
-
for (const character of visibleSegment) {
|
|
2589
|
-
if (zeroWidthClusterRegex.test(character)) {
|
|
2590
|
-
continue;
|
|
2591
|
-
}
|
|
2592
|
-
codePoints.push(character.codePointAt(0));
|
|
2593
|
-
}
|
|
2594
|
-
if (codePoints.length === 0) {
|
|
2595
|
-
return void 0;
|
|
2596
|
-
}
|
|
2597
|
-
let width = 0;
|
|
2598
|
-
for (let index = 0; index < codePoints.length; index++) {
|
|
2599
|
-
const codePoint = codePoints[index];
|
|
2600
|
-
if (!isHangulJamo(codePoint)) {
|
|
2601
|
-
if (width === 0) {
|
|
2602
|
-
return void 0;
|
|
2603
|
-
}
|
|
2604
|
-
for (let remaining = index; remaining < codePoints.length; remaining++) {
|
|
2605
|
-
width += eastAsianWidth(codePoints[remaining], eastAsianWidthOptions);
|
|
2606
|
-
}
|
|
2607
|
-
return width;
|
|
2608
|
-
}
|
|
2609
|
-
if (isHangulLeadingJamo(codePoint) && isHangulVowelJamo(codePoints[index + 1])) {
|
|
2610
|
-
width += 2;
|
|
2611
|
-
index += isHangulTrailingJamo(codePoints[index + 2]) ? 2 : 1;
|
|
2612
|
-
continue;
|
|
2613
|
-
}
|
|
2614
|
-
width += eastAsianWidth(codePoint, eastAsianWidthOptions);
|
|
2615
|
-
}
|
|
2616
|
-
return width;
|
|
2617
|
-
}
|
|
2618
|
-
__name(hangulClusterWidth, "hangulClusterWidth");
|
|
2619
|
-
function trailingHalfwidthWidth(visibleSegment, eastAsianWidthOptions) {
|
|
2620
|
-
let extra = 0;
|
|
2621
|
-
let first = true;
|
|
2622
|
-
for (const character of visibleSegment) {
|
|
2623
|
-
if (first) {
|
|
2624
|
-
first = false;
|
|
2625
|
-
continue;
|
|
2626
|
-
}
|
|
2627
|
-
if (character >= "\uFF00" && character <= "\uFFEF") {
|
|
2628
|
-
extra += eastAsianWidth(character.codePointAt(0), eastAsianWidthOptions);
|
|
2629
|
-
}
|
|
2630
|
-
}
|
|
2631
|
-
return extra;
|
|
2632
|
-
}
|
|
2633
|
-
__name(trailingHalfwidthWidth, "trailingHalfwidthWidth");
|
|
2634
|
-
function stringWidth2(input, options = {}) {
|
|
2635
|
-
if (typeof input !== "string" || input.length === 0) {
|
|
2636
|
-
return 0;
|
|
2637
|
-
}
|
|
2638
|
-
const {
|
|
2639
|
-
ambiguousIsNarrow = true,
|
|
2640
|
-
countAnsiEscapeCodes = false
|
|
2641
|
-
} = options;
|
|
2642
|
-
let string = input;
|
|
2643
|
-
if (!countAnsiEscapeCodes && (string.includes("\x1B") || string.includes("\x9B"))) {
|
|
2644
|
-
string = stripAnsi(string);
|
|
2645
|
-
}
|
|
2646
|
-
if (string.length === 0) {
|
|
2647
|
-
return 0;
|
|
2648
|
-
}
|
|
2649
|
-
if (/^[\u0020-\u007E]*$/.test(string)) {
|
|
2650
|
-
return string.length;
|
|
2651
|
-
}
|
|
2652
|
-
let width = 0;
|
|
2653
|
-
const eastAsianWidthOptions = { ambiguousAsWide: !ambiguousIsNarrow };
|
|
2654
|
-
for (const { segment } of segmenter.segment(string)) {
|
|
2655
|
-
if (isZeroWidthCluster(segment)) {
|
|
2656
|
-
continue;
|
|
2657
|
-
}
|
|
2658
|
-
if (rgiEmojiRegex.test(segment) || isDoubleWidthNonRgiEmojiSequence(segment)) {
|
|
2659
|
-
width += 2;
|
|
2660
|
-
continue;
|
|
2661
|
-
}
|
|
2662
|
-
const visibleSegment = baseVisible(segment);
|
|
2663
|
-
const hangulWidth = hangulClusterWidth(visibleSegment, eastAsianWidthOptions);
|
|
2664
|
-
if (hangulWidth !== void 0) {
|
|
2665
|
-
width += hangulWidth;
|
|
2666
|
-
continue;
|
|
2667
|
-
}
|
|
2668
|
-
const codePoint = visibleSegment.codePointAt(0);
|
|
2669
|
-
width += eastAsianWidth(codePoint, eastAsianWidthOptions);
|
|
2670
|
-
width += trailingHalfwidthWidth(visibleSegment, eastAsianWidthOptions);
|
|
2671
|
-
}
|
|
2672
|
-
return width;
|
|
2673
|
-
}
|
|
2674
|
-
__name(stringWidth2, "stringWidth");
|
|
2675
|
-
|
|
2676
|
-
// packages/cli/node_modules/ansi-styles/index.js
|
|
2677
|
-
init_esbuild_shims();
|
|
2678
|
-
var ANSI_BACKGROUND_OFFSET = 10;
|
|
2679
|
-
var wrapAnsi16 = /* @__PURE__ */ __name((offset = 0) => (code) => `\x1B[${code + offset}m`, "wrapAnsi16");
|
|
2680
|
-
var wrapAnsi256 = /* @__PURE__ */ __name((offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`, "wrapAnsi256");
|
|
2681
|
-
var wrapAnsi16m = /* @__PURE__ */ __name((offset = 0) => (red, green, blue) => `\x1B[${38 + offset};2;${red};${green};${blue}m`, "wrapAnsi16m");
|
|
2682
|
-
var styles = {
|
|
2683
|
-
modifier: {
|
|
2684
|
-
reset: [0, 0],
|
|
2685
|
-
// 21 isn't widely supported and 22 does the same thing
|
|
2686
|
-
bold: [1, 22],
|
|
2687
|
-
dim: [2, 22],
|
|
2688
|
-
italic: [3, 23],
|
|
2689
|
-
underline: [4, 24],
|
|
2690
|
-
overline: [53, 55],
|
|
2691
|
-
inverse: [7, 27],
|
|
2692
|
-
hidden: [8, 28],
|
|
2693
|
-
strikethrough: [9, 29]
|
|
2694
|
-
},
|
|
2695
|
-
color: {
|
|
2696
|
-
black: [30, 39],
|
|
2697
|
-
red: [31, 39],
|
|
2698
|
-
green: [32, 39],
|
|
2699
|
-
yellow: [33, 39],
|
|
2700
|
-
blue: [34, 39],
|
|
2701
|
-
magenta: [35, 39],
|
|
2702
|
-
cyan: [36, 39],
|
|
2703
|
-
white: [37, 39],
|
|
2704
|
-
// Bright color
|
|
2705
|
-
blackBright: [90, 39],
|
|
2706
|
-
gray: [90, 39],
|
|
2707
|
-
// Alias of `blackBright`
|
|
2708
|
-
grey: [90, 39],
|
|
2709
|
-
// Alias of `blackBright`
|
|
2710
|
-
redBright: [91, 39],
|
|
2711
|
-
greenBright: [92, 39],
|
|
2712
|
-
yellowBright: [93, 39],
|
|
2713
|
-
blueBright: [94, 39],
|
|
2714
|
-
magentaBright: [95, 39],
|
|
2715
|
-
cyanBright: [96, 39],
|
|
2716
|
-
whiteBright: [97, 39]
|
|
2717
|
-
},
|
|
2718
|
-
bgColor: {
|
|
2719
|
-
bgBlack: [40, 49],
|
|
2720
|
-
bgRed: [41, 49],
|
|
2721
|
-
bgGreen: [42, 49],
|
|
2722
|
-
bgYellow: [43, 49],
|
|
2723
|
-
bgBlue: [44, 49],
|
|
2724
|
-
bgMagenta: [45, 49],
|
|
2725
|
-
bgCyan: [46, 49],
|
|
2726
|
-
bgWhite: [47, 49],
|
|
2727
|
-
// Bright color
|
|
2728
|
-
bgBlackBright: [100, 49],
|
|
2729
|
-
bgGray: [100, 49],
|
|
2730
|
-
// Alias of `bgBlackBright`
|
|
2731
|
-
bgGrey: [100, 49],
|
|
2732
|
-
// Alias of `bgBlackBright`
|
|
2733
|
-
bgRedBright: [101, 49],
|
|
2734
|
-
bgGreenBright: [102, 49],
|
|
2735
|
-
bgYellowBright: [103, 49],
|
|
2736
|
-
bgBlueBright: [104, 49],
|
|
2737
|
-
bgMagentaBright: [105, 49],
|
|
2738
|
-
bgCyanBright: [106, 49],
|
|
2739
|
-
bgWhiteBright: [107, 49]
|
|
2740
|
-
}
|
|
2741
|
-
};
|
|
2742
|
-
var modifierNames = Object.keys(styles.modifier);
|
|
2743
|
-
var foregroundColorNames = Object.keys(styles.color);
|
|
2744
|
-
var backgroundColorNames = Object.keys(styles.bgColor);
|
|
2745
|
-
var colorNames = [...foregroundColorNames, ...backgroundColorNames];
|
|
2746
|
-
function assembleStyles() {
|
|
2747
|
-
const codes = /* @__PURE__ */ new Map();
|
|
2748
|
-
for (const [groupName, group] of Object.entries(styles)) {
|
|
2749
|
-
for (const [styleName, style] of Object.entries(group)) {
|
|
2750
|
-
styles[styleName] = {
|
|
2751
|
-
open: `\x1B[${style[0]}m`,
|
|
2752
|
-
close: `\x1B[${style[1]}m`
|
|
2753
|
-
};
|
|
2754
|
-
group[styleName] = styles[styleName];
|
|
2755
|
-
codes.set(style[0], style[1]);
|
|
2756
|
-
}
|
|
2757
|
-
Object.defineProperty(styles, groupName, {
|
|
2758
|
-
value: group,
|
|
2759
|
-
enumerable: false
|
|
2760
|
-
});
|
|
2761
|
-
}
|
|
2762
|
-
Object.defineProperty(styles, "codes", {
|
|
2763
|
-
value: codes,
|
|
2764
|
-
enumerable: false
|
|
2765
|
-
});
|
|
2766
|
-
styles.color.close = "\x1B[39m";
|
|
2767
|
-
styles.bgColor.close = "\x1B[49m";
|
|
2768
|
-
styles.color.ansi = wrapAnsi16();
|
|
2769
|
-
styles.color.ansi256 = wrapAnsi256();
|
|
2770
|
-
styles.color.ansi16m = wrapAnsi16m();
|
|
2771
|
-
styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
|
|
2772
|
-
styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
|
|
2773
|
-
styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
|
|
2774
|
-
Object.defineProperties(styles, {
|
|
2775
|
-
rgbToAnsi256: {
|
|
2776
|
-
value(red, green, blue) {
|
|
2777
|
-
if (red === green && green === blue) {
|
|
2778
|
-
if (red < 8) {
|
|
2779
|
-
return 16;
|
|
2780
|
-
}
|
|
2781
|
-
if (red > 248) {
|
|
2782
|
-
return 231;
|
|
2783
|
-
}
|
|
2784
|
-
return Math.round((red - 8) / 247 * 24) + 232;
|
|
2785
|
-
}
|
|
2786
|
-
return 16 + 36 * Math.round(red / 255 * 5) + 6 * Math.round(green / 255 * 5) + Math.round(blue / 255 * 5);
|
|
2787
|
-
},
|
|
2788
|
-
enumerable: false
|
|
2789
|
-
},
|
|
2790
|
-
hexToRgb: {
|
|
2791
|
-
value(hex) {
|
|
2792
|
-
const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
|
|
2793
|
-
if (!matches) {
|
|
2794
|
-
return [0, 0, 0];
|
|
2795
|
-
}
|
|
2796
|
-
let [colorString] = matches;
|
|
2797
|
-
if (colorString.length === 3) {
|
|
2798
|
-
colorString = [...colorString].map((character) => character + character).join("");
|
|
2799
|
-
}
|
|
2800
|
-
const integer = Number.parseInt(colorString, 16);
|
|
2801
|
-
return [
|
|
2802
|
-
/* eslint-disable no-bitwise */
|
|
2803
|
-
integer >> 16 & 255,
|
|
2804
|
-
integer >> 8 & 255,
|
|
2805
|
-
integer & 255
|
|
2806
|
-
/* eslint-enable no-bitwise */
|
|
2807
|
-
];
|
|
2808
|
-
},
|
|
2809
|
-
enumerable: false
|
|
2810
|
-
},
|
|
2811
|
-
hexToAnsi256: {
|
|
2812
|
-
value: /* @__PURE__ */ __name((hex) => styles.rgbToAnsi256(...styles.hexToRgb(hex)), "value"),
|
|
2813
|
-
enumerable: false
|
|
2814
|
-
},
|
|
2815
|
-
ansi256ToAnsi: {
|
|
2816
|
-
value(code) {
|
|
2817
|
-
if (code < 8) {
|
|
2818
|
-
return 30 + code;
|
|
2819
|
-
}
|
|
2820
|
-
if (code < 16) {
|
|
2821
|
-
return 90 + (code - 8);
|
|
2822
|
-
}
|
|
2823
|
-
let red;
|
|
2824
|
-
let green;
|
|
2825
|
-
let blue;
|
|
2826
|
-
if (code >= 232) {
|
|
2827
|
-
red = ((code - 232) * 10 + 8) / 255;
|
|
2828
|
-
green = red;
|
|
2829
|
-
blue = red;
|
|
2830
|
-
} else {
|
|
2831
|
-
code -= 16;
|
|
2832
|
-
const remainder = code % 36;
|
|
2833
|
-
red = Math.floor(code / 36) / 5;
|
|
2834
|
-
green = Math.floor(remainder / 6) / 5;
|
|
2835
|
-
blue = remainder % 6 / 5;
|
|
2836
|
-
}
|
|
2837
|
-
const value = Math.max(red, green, blue) * 2;
|
|
2838
|
-
if (value === 0) {
|
|
2839
|
-
return 30;
|
|
2840
|
-
}
|
|
2841
|
-
let result = 30 + (Math.round(blue) << 2 | Math.round(green) << 1 | Math.round(red));
|
|
2842
|
-
if (value === 2) {
|
|
2843
|
-
result += 60;
|
|
2844
|
-
}
|
|
2845
|
-
return result;
|
|
2846
|
-
},
|
|
2847
|
-
enumerable: false
|
|
2848
|
-
},
|
|
2849
|
-
rgbToAnsi: {
|
|
2850
|
-
value: /* @__PURE__ */ __name((red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)), "value"),
|
|
2851
|
-
enumerable: false
|
|
2852
|
-
},
|
|
2853
|
-
hexToAnsi: {
|
|
2854
|
-
value: /* @__PURE__ */ __name((hex) => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)), "value"),
|
|
2855
|
-
enumerable: false
|
|
2856
|
-
}
|
|
2857
|
-
});
|
|
2858
|
-
return styles;
|
|
2859
|
-
}
|
|
2860
|
-
__name(assembleStyles, "assembleStyles");
|
|
2861
|
-
var ansiStyles = assembleStyles();
|
|
2862
|
-
var ansi_styles_default = ansiStyles;
|
|
2863
|
-
|
|
2864
|
-
// packages/cli/node_modules/wrap-ansi/index.js
|
|
2865
|
-
var ANSI_ESCAPE = "\x1B";
|
|
2866
|
-
var ANSI_ESCAPE_CSI = "\x9B";
|
|
2867
|
-
var ESCAPES = /* @__PURE__ */ new Set([
|
|
2868
|
-
ANSI_ESCAPE,
|
|
2869
|
-
ANSI_ESCAPE_CSI
|
|
2870
|
-
]);
|
|
2871
|
-
var ANSI_ESCAPE_BELL = "\x07";
|
|
2872
|
-
var ANSI_CSI = "[";
|
|
2873
|
-
var ANSI_OSC = "]";
|
|
2874
|
-
var ANSI_SGR_TERMINATOR = "m";
|
|
2875
|
-
var ANSI_SGR_RESET = 0;
|
|
2876
|
-
var ANSI_SGR_RESET_FOREGROUND = 39;
|
|
2877
|
-
var ANSI_SGR_RESET_BACKGROUND = 49;
|
|
2878
|
-
var ANSI_SGR_RESET_UNDERLINE_COLOR = 59;
|
|
2879
|
-
var ANSI_SGR_FOREGROUND_EXTENDED = 38;
|
|
2880
|
-
var ANSI_SGR_BACKGROUND_EXTENDED = 48;
|
|
2881
|
-
var ANSI_SGR_UNDERLINE_COLOR_EXTENDED = 58;
|
|
2882
|
-
var ANSI_SGR_COLOR_MODE_256 = 5;
|
|
2883
|
-
var ANSI_SGR_COLOR_MODE_RGB = 2;
|
|
2884
|
-
var ANSI_ESCAPE_LINK = `${ANSI_OSC}8;;`;
|
|
2885
|
-
var ANSI_ESCAPE_REGEX = new RegExp(`^\\u001B(?:\\${ANSI_CSI}(?<sgr>[0-9;]*)${ANSI_SGR_TERMINATOR}|${ANSI_ESCAPE_LINK}(?<uri>[^\\u0007\\u001B]*)(?:\\u0007|\\u001B\\\\))`);
|
|
2886
|
-
var ANSI_ESCAPE_CSI_REGEX = new RegExp(`^\\u009B(?<sgr>[0-9;]*)${ANSI_SGR_TERMINATOR}`);
|
|
2887
|
-
var ANSI_SGR_MODIFIER_CLOSE_CODES = new Set(ansi_styles_default.codes.values());
|
|
2888
|
-
ANSI_SGR_MODIFIER_CLOSE_CODES.delete(ANSI_SGR_RESET);
|
|
2889
|
-
var segmenter2 = new Intl.Segmenter();
|
|
2890
|
-
var getGraphemes = /* @__PURE__ */ __name((string) => Array.from(segmenter2.segment(string), ({ segment }) => segment), "getGraphemes");
|
|
2891
|
-
var TAB_SIZE = 8;
|
|
2892
|
-
var wrapAnsiCode = /* @__PURE__ */ __name((code) => `${ANSI_ESCAPE}${ANSI_CSI}${code}${ANSI_SGR_TERMINATOR}`, "wrapAnsiCode");
|
|
2893
|
-
var wrapAnsiHyperlink = /* @__PURE__ */ __name((url) => `${ANSI_ESCAPE}${ANSI_ESCAPE_LINK}${url}${ANSI_ESCAPE_BELL}`, "wrapAnsiHyperlink");
|
|
2894
|
-
var getSgrTokens = /* @__PURE__ */ __name((sgrParameters) => {
|
|
2895
|
-
const codes = sgrParameters.split(";").map((sgrParameter) => sgrParameter === "" ? ANSI_SGR_RESET : Number.parseInt(sgrParameter, 10));
|
|
2896
|
-
const sgrTokens = [];
|
|
2897
|
-
for (let index = 0; index < codes.length; index++) {
|
|
2898
|
-
const code = codes[index];
|
|
2899
|
-
if (!Number.isFinite(code)) {
|
|
2900
|
-
continue;
|
|
2901
|
-
}
|
|
2902
|
-
if (code === ANSI_SGR_FOREGROUND_EXTENDED || code === ANSI_SGR_BACKGROUND_EXTENDED || code === ANSI_SGR_UNDERLINE_COLOR_EXTENDED) {
|
|
2903
|
-
if (index + 1 >= codes.length) {
|
|
2904
|
-
break;
|
|
2905
|
-
}
|
|
2906
|
-
const mode = codes[index + 1];
|
|
2907
|
-
if (mode === ANSI_SGR_COLOR_MODE_256 && Number.isFinite(codes[index + 2])) {
|
|
2908
|
-
sgrTokens.push([code, mode, codes[index + 2]]);
|
|
2909
|
-
index += 2;
|
|
2910
|
-
continue;
|
|
2911
|
-
}
|
|
2912
|
-
const red = codes[index + 2];
|
|
2913
|
-
const green = codes[index + 3];
|
|
2914
|
-
const blue = codes[index + 4];
|
|
2915
|
-
if (mode === ANSI_SGR_COLOR_MODE_RGB && Number.isFinite(red) && Number.isFinite(green) && Number.isFinite(blue)) {
|
|
2916
|
-
sgrTokens.push([code, mode, red, green, blue]);
|
|
2917
|
-
index += 4;
|
|
2918
|
-
continue;
|
|
2919
|
-
}
|
|
2920
|
-
break;
|
|
2921
|
-
}
|
|
2922
|
-
sgrTokens.push([code]);
|
|
2923
|
-
}
|
|
2924
|
-
return sgrTokens;
|
|
2925
|
-
}, "getSgrTokens");
|
|
2926
|
-
var removeActiveStyle = /* @__PURE__ */ __name((activeStyles, family) => {
|
|
2927
|
-
const activeStyleIndex = activeStyles.findIndex((activeStyle) => activeStyle.family === family);
|
|
2928
|
-
if (activeStyleIndex !== -1) {
|
|
2929
|
-
activeStyles.splice(activeStyleIndex, 1);
|
|
2930
|
-
}
|
|
2931
|
-
}, "removeActiveStyle");
|
|
2932
|
-
var upsertActiveStyle = /* @__PURE__ */ __name((activeStyles, nextActiveStyle) => {
|
|
2933
|
-
removeActiveStyle(activeStyles, nextActiveStyle.family);
|
|
2934
|
-
activeStyles.push(nextActiveStyle);
|
|
2935
|
-
}, "upsertActiveStyle");
|
|
2936
|
-
var removeModifierStylesByClose = /* @__PURE__ */ __name((activeStyles, closeCode) => {
|
|
2937
|
-
for (let index = activeStyles.length - 1; index >= 0; index--) {
|
|
2938
|
-
const activeStyle = activeStyles[index];
|
|
2939
|
-
if (activeStyle.family.startsWith("modifier-") && activeStyle.close === closeCode) {
|
|
2940
|
-
activeStyles.splice(index, 1);
|
|
2941
|
-
}
|
|
2942
|
-
}
|
|
2943
|
-
}, "removeModifierStylesByClose");
|
|
2944
|
-
var getColorStyle = /* @__PURE__ */ __name((code, sgrToken) => {
|
|
2945
|
-
if (code >= 30 && code <= 37 || code >= 90 && code <= 97 || code === ANSI_SGR_FOREGROUND_EXTENDED && sgrToken.length > 1) {
|
|
2946
|
-
return {
|
|
2947
|
-
family: "foreground",
|
|
2948
|
-
open: sgrToken.join(";"),
|
|
2949
|
-
close: ANSI_SGR_RESET_FOREGROUND
|
|
2950
|
-
};
|
|
2951
|
-
}
|
|
2952
|
-
if (code >= 40 && code <= 47 || code >= 100 && code <= 107 || code === ANSI_SGR_BACKGROUND_EXTENDED && sgrToken.length > 1) {
|
|
2953
|
-
return {
|
|
2954
|
-
family: "background",
|
|
2955
|
-
open: sgrToken.join(";"),
|
|
2956
|
-
close: ANSI_SGR_RESET_BACKGROUND
|
|
2957
|
-
};
|
|
2958
|
-
}
|
|
2959
|
-
if (code === ANSI_SGR_UNDERLINE_COLOR_EXTENDED && sgrToken.length > 1) {
|
|
2960
|
-
return {
|
|
2961
|
-
family: "underlineColor",
|
|
2962
|
-
open: sgrToken.join(";"),
|
|
2963
|
-
close: ANSI_SGR_RESET_UNDERLINE_COLOR
|
|
2964
|
-
};
|
|
2965
|
-
}
|
|
2966
|
-
}, "getColorStyle");
|
|
2967
|
-
var applySgrResetCode = /* @__PURE__ */ __name((code, activeStyles) => {
|
|
2968
|
-
if (code === ANSI_SGR_RESET) {
|
|
2969
|
-
activeStyles.length = 0;
|
|
2970
|
-
return true;
|
|
2971
|
-
}
|
|
2972
|
-
if (code === ANSI_SGR_RESET_FOREGROUND) {
|
|
2973
|
-
removeActiveStyle(activeStyles, "foreground");
|
|
2974
|
-
return true;
|
|
2975
|
-
}
|
|
2976
|
-
if (code === ANSI_SGR_RESET_BACKGROUND) {
|
|
2977
|
-
removeActiveStyle(activeStyles, "background");
|
|
2978
|
-
return true;
|
|
2979
|
-
}
|
|
2980
|
-
if (code === ANSI_SGR_RESET_UNDERLINE_COLOR) {
|
|
2981
|
-
removeActiveStyle(activeStyles, "underlineColor");
|
|
2982
|
-
return true;
|
|
2983
|
-
}
|
|
2984
|
-
if (ANSI_SGR_MODIFIER_CLOSE_CODES.has(code)) {
|
|
2985
|
-
removeModifierStylesByClose(activeStyles, code);
|
|
2986
|
-
return true;
|
|
2987
|
-
}
|
|
2988
|
-
return false;
|
|
2989
|
-
}, "applySgrResetCode");
|
|
2990
|
-
var applySgrToken = /* @__PURE__ */ __name((sgrToken, activeStyles) => {
|
|
2991
|
-
const [code] = sgrToken;
|
|
2992
|
-
if (applySgrResetCode(code, activeStyles)) {
|
|
2993
|
-
return;
|
|
2994
|
-
}
|
|
2995
|
-
const colorStyle = getColorStyle(code, sgrToken);
|
|
2996
|
-
if (colorStyle) {
|
|
2997
|
-
upsertActiveStyle(activeStyles, colorStyle);
|
|
2998
|
-
return;
|
|
2999
|
-
}
|
|
3000
|
-
const close = ansi_styles_default.codes.get(code);
|
|
3001
|
-
if (close !== void 0 && close !== ANSI_SGR_RESET) {
|
|
3002
|
-
upsertActiveStyle(activeStyles, {
|
|
3003
|
-
family: `modifier-${code}`,
|
|
3004
|
-
open: sgrToken.join(";"),
|
|
3005
|
-
close
|
|
3006
|
-
});
|
|
3007
|
-
}
|
|
3008
|
-
}, "applySgrToken");
|
|
3009
|
-
var applySgrParameters = /* @__PURE__ */ __name((sgrParameters, activeStyles) => {
|
|
3010
|
-
for (const sgrToken of getSgrTokens(sgrParameters)) {
|
|
3011
|
-
applySgrToken(sgrToken, activeStyles);
|
|
3012
|
-
}
|
|
3013
|
-
}, "applySgrParameters");
|
|
3014
|
-
var applySgrResets = /* @__PURE__ */ __name((sgrParameters, activeStyles) => {
|
|
3015
|
-
for (const sgrToken of getSgrTokens(sgrParameters)) {
|
|
3016
|
-
const [code] = sgrToken;
|
|
3017
|
-
applySgrResetCode(code, activeStyles);
|
|
3018
|
-
}
|
|
3019
|
-
}, "applySgrResets");
|
|
3020
|
-
var applyLeadingSgrResets = /* @__PURE__ */ __name((string, activeStyles) => {
|
|
3021
|
-
let remainder = string;
|
|
3022
|
-
while (remainder.length > 0) {
|
|
3023
|
-
if (remainder.startsWith(ANSI_ESCAPE) && remainder[1] !== "\\") {
|
|
3024
|
-
const match = ANSI_ESCAPE_REGEX.exec(remainder);
|
|
3025
|
-
if (!match) {
|
|
3026
|
-
break;
|
|
3027
|
-
}
|
|
3028
|
-
if (match.groups.sgr !== void 0) {
|
|
3029
|
-
applySgrResets(match.groups.sgr, activeStyles);
|
|
3030
|
-
}
|
|
3031
|
-
remainder = remainder.slice(match[0].length);
|
|
3032
|
-
continue;
|
|
3033
|
-
}
|
|
3034
|
-
if (remainder.startsWith(ANSI_ESCAPE_CSI)) {
|
|
3035
|
-
const match = ANSI_ESCAPE_CSI_REGEX.exec(remainder);
|
|
3036
|
-
if (!match || match.groups.sgr === void 0) {
|
|
3037
|
-
break;
|
|
3038
|
-
}
|
|
3039
|
-
applySgrResets(match.groups.sgr, activeStyles);
|
|
3040
|
-
remainder = remainder.slice(match[0].length);
|
|
3041
|
-
continue;
|
|
3042
|
-
}
|
|
3043
|
-
break;
|
|
3044
|
-
}
|
|
3045
|
-
}, "applyLeadingSgrResets");
|
|
3046
|
-
var getClosingSgrSequence = /* @__PURE__ */ __name((activeStyles) => [...activeStyles].reverse().map((activeStyle) => wrapAnsiCode(activeStyle.close)).join(""), "getClosingSgrSequence");
|
|
3047
|
-
var getOpeningSgrSequence = /* @__PURE__ */ __name((activeStyles) => activeStyles.map((activeStyle) => wrapAnsiCode(activeStyle.open)).join(""), "getOpeningSgrSequence");
|
|
3048
|
-
var wordLengths = /* @__PURE__ */ __name((string) => string.split(" ").map((word) => stringWidth2(word)), "wordLengths");
|
|
3049
|
-
var wrapWord = /* @__PURE__ */ __name((rows, word, columns) => {
|
|
3050
|
-
const characters = getGraphemes(word);
|
|
3051
|
-
let isInsideEscape = false;
|
|
3052
|
-
let isInsideLinkEscape = false;
|
|
3053
|
-
let visible = stringWidth2(stripAnsi(rows.at(-1)));
|
|
3054
|
-
for (const [index, character] of characters.entries()) {
|
|
3055
|
-
const characterLength = stringWidth2(character);
|
|
3056
|
-
if (visible + characterLength <= columns) {
|
|
3057
|
-
rows[rows.length - 1] += character;
|
|
3058
|
-
} else {
|
|
3059
|
-
rows.push(character);
|
|
3060
|
-
visible = 0;
|
|
3061
|
-
}
|
|
3062
|
-
if (ESCAPES.has(character) && !(isInsideLinkEscape && character === ANSI_ESCAPE && characters[index + 1] === "\\")) {
|
|
3063
|
-
isInsideEscape = true;
|
|
3064
|
-
const ansiEscapeLinkCandidate = characters.slice(index + 1, index + 1 + ANSI_ESCAPE_LINK.length).join("");
|
|
3065
|
-
isInsideLinkEscape = ansiEscapeLinkCandidate === ANSI_ESCAPE_LINK;
|
|
3066
|
-
}
|
|
3067
|
-
if (isInsideEscape) {
|
|
3068
|
-
if (isInsideLinkEscape) {
|
|
3069
|
-
if (character === ANSI_ESCAPE_BELL || character === "\\" && index > 0 && characters[index - 1] === ANSI_ESCAPE) {
|
|
3070
|
-
isInsideEscape = false;
|
|
3071
|
-
isInsideLinkEscape = false;
|
|
3072
|
-
}
|
|
3073
|
-
} else if (character === ANSI_SGR_TERMINATOR) {
|
|
3074
|
-
isInsideEscape = false;
|
|
3075
|
-
}
|
|
3076
|
-
continue;
|
|
3077
|
-
}
|
|
3078
|
-
visible += characterLength;
|
|
3079
|
-
if (visible === columns && index < characters.length - 1) {
|
|
3080
|
-
rows.push("");
|
|
3081
|
-
visible = 0;
|
|
3082
|
-
}
|
|
3083
|
-
}
|
|
3084
|
-
if (!visible && rows.at(-1).length > 0 && rows.length > 1) {
|
|
3085
|
-
rows[rows.length - 2] += rows.pop();
|
|
3086
|
-
}
|
|
3087
|
-
}, "wrapWord");
|
|
3088
|
-
var stringVisibleTrimSpacesRight = /* @__PURE__ */ __name((string) => {
|
|
3089
|
-
const words = string.split(" ");
|
|
3090
|
-
let last = words.length;
|
|
3091
|
-
while (last > 0) {
|
|
3092
|
-
if (stringWidth2(words[last - 1]) > 0) {
|
|
3093
|
-
break;
|
|
3094
|
-
}
|
|
3095
|
-
last--;
|
|
3096
|
-
}
|
|
3097
|
-
if (last === words.length) {
|
|
3098
|
-
return string;
|
|
3099
|
-
}
|
|
3100
|
-
return words.slice(0, last).join(" ") + words.slice(last).join("");
|
|
3101
|
-
}, "stringVisibleTrimSpacesRight");
|
|
3102
|
-
var expandTabs = /* @__PURE__ */ __name((line) => {
|
|
3103
|
-
if (!line.includes(" ")) {
|
|
3104
|
-
return line;
|
|
3105
|
-
}
|
|
3106
|
-
const segments = line.split(" ");
|
|
3107
|
-
let visible = 0;
|
|
3108
|
-
let expandedLine = "";
|
|
3109
|
-
for (const [index, segment] of segments.entries()) {
|
|
3110
|
-
expandedLine += segment;
|
|
3111
|
-
visible += stringWidth2(segment);
|
|
3112
|
-
if (index < segments.length - 1) {
|
|
3113
|
-
const spaces = TAB_SIZE - visible % TAB_SIZE;
|
|
3114
|
-
expandedLine += " ".repeat(spaces);
|
|
3115
|
-
visible += spaces;
|
|
3116
|
-
}
|
|
3117
|
-
}
|
|
3118
|
-
return expandedLine;
|
|
3119
|
-
}, "expandTabs");
|
|
3120
|
-
var exec = /* @__PURE__ */ __name((string, columns, options = {}) => {
|
|
3121
|
-
if (options.trim !== false && string.trim() === "") {
|
|
3122
|
-
return "";
|
|
3123
|
-
}
|
|
3124
|
-
let returnValue = "";
|
|
3125
|
-
let escapeUrl;
|
|
3126
|
-
const activeStyles = [];
|
|
3127
|
-
const lengths = wordLengths(string);
|
|
3128
|
-
let rows = [""];
|
|
3129
|
-
for (const [index, word] of string.split(" ").entries()) {
|
|
3130
|
-
if (options.trim !== false) {
|
|
3131
|
-
rows[rows.length - 1] = rows.at(-1).trimStart();
|
|
3132
|
-
}
|
|
3133
|
-
let rowLength = stringWidth2(rows.at(-1));
|
|
3134
|
-
if (index !== 0) {
|
|
3135
|
-
if (rowLength >= columns && (options.wordWrap === false || options.trim === false)) {
|
|
3136
|
-
rows.push("");
|
|
3137
|
-
rowLength = 0;
|
|
3138
|
-
}
|
|
3139
|
-
if (rowLength > 0 || options.trim === false) {
|
|
3140
|
-
rows[rows.length - 1] += " ";
|
|
3141
|
-
rowLength++;
|
|
3142
|
-
}
|
|
3143
|
-
}
|
|
3144
|
-
if (options.hard && options.wordWrap !== false && lengths[index] > columns) {
|
|
3145
|
-
const remainingColumns = columns - rowLength;
|
|
3146
|
-
const breaksStartingThisLine = 1 + Math.floor((lengths[index] - remainingColumns - 1) / columns);
|
|
3147
|
-
const breaksStartingNextLine = Math.floor((lengths[index] - 1) / columns);
|
|
3148
|
-
if (breaksStartingNextLine < breaksStartingThisLine) {
|
|
3149
|
-
rows.push("");
|
|
3150
|
-
}
|
|
3151
|
-
wrapWord(rows, word, columns);
|
|
3152
|
-
continue;
|
|
3153
|
-
}
|
|
3154
|
-
if (rowLength + lengths[index] > columns && rowLength > 0 && lengths[index] > 0) {
|
|
3155
|
-
if (options.wordWrap === false && rowLength < columns) {
|
|
3156
|
-
wrapWord(rows, word, columns);
|
|
3157
|
-
continue;
|
|
3158
|
-
}
|
|
3159
|
-
rows.push("");
|
|
3160
|
-
}
|
|
3161
|
-
if (rowLength + lengths[index] > columns && options.wordWrap === false) {
|
|
3162
|
-
wrapWord(rows, word, columns);
|
|
3163
|
-
continue;
|
|
3164
|
-
}
|
|
3165
|
-
rows[rows.length - 1] += word;
|
|
3166
|
-
}
|
|
3167
|
-
if (options.trim !== false) {
|
|
3168
|
-
rows = rows.map((row) => stringVisibleTrimSpacesRight(row));
|
|
3169
|
-
}
|
|
3170
|
-
const preString = rows.join("\n");
|
|
3171
|
-
const pre = getGraphemes(preString);
|
|
3172
|
-
let preStringIndex = 0;
|
|
3173
|
-
for (const [index, character] of pre.entries()) {
|
|
3174
|
-
returnValue += character;
|
|
3175
|
-
if (character === ANSI_ESCAPE && pre[index + 1] !== "\\") {
|
|
3176
|
-
const { groups } = ANSI_ESCAPE_REGEX.exec(preString.slice(preStringIndex)) || { groups: {} };
|
|
3177
|
-
if (groups.sgr !== void 0) {
|
|
3178
|
-
applySgrParameters(groups.sgr, activeStyles);
|
|
3179
|
-
} else if (groups.uri !== void 0) {
|
|
3180
|
-
escapeUrl = groups.uri.length === 0 ? void 0 : groups.uri;
|
|
3181
|
-
}
|
|
3182
|
-
} else if (character === ANSI_ESCAPE_CSI) {
|
|
3183
|
-
const { groups } = ANSI_ESCAPE_CSI_REGEX.exec(preString.slice(preStringIndex)) || { groups: {} };
|
|
3184
|
-
if (groups.sgr !== void 0) {
|
|
3185
|
-
applySgrParameters(groups.sgr, activeStyles);
|
|
3186
|
-
}
|
|
3187
|
-
}
|
|
3188
|
-
if (pre[index + 1] === "\n") {
|
|
3189
|
-
if (escapeUrl) {
|
|
3190
|
-
returnValue += wrapAnsiHyperlink("");
|
|
3191
|
-
}
|
|
3192
|
-
returnValue += getClosingSgrSequence(activeStyles);
|
|
3193
|
-
} else if (character === "\n") {
|
|
3194
|
-
const openingStyles = [...activeStyles];
|
|
3195
|
-
applyLeadingSgrResets(preString.slice(preStringIndex + 1), openingStyles);
|
|
3196
|
-
returnValue += getOpeningSgrSequence(openingStyles);
|
|
3197
|
-
if (escapeUrl) {
|
|
3198
|
-
returnValue += wrapAnsiHyperlink(escapeUrl);
|
|
3199
|
-
}
|
|
3200
|
-
}
|
|
3201
|
-
preStringIndex += character.length;
|
|
3202
|
-
}
|
|
3203
|
-
return returnValue;
|
|
3204
|
-
}, "exec");
|
|
3205
|
-
function wrapAnsi(string, columns, options) {
|
|
3206
|
-
return String(string).normalize().replaceAll("\r\n", "\n").split("\n").map((line) => exec(expandTabs(line), columns, options)).join("\n");
|
|
3207
|
-
}
|
|
3208
|
-
__name(wrapAnsi, "wrapAnsi");
|
|
3209
|
-
|
|
3210
2541
|
// packages/cli/src/ui/utils/latexRenderer.ts
|
|
3211
2542
|
init_esbuild_shims();
|
|
3212
2543
|
var COMMAND_REPLACEMENTS = {
|
|
@@ -6480,14 +5811,15 @@ var MarkdownDisplayInternal = /* @__PURE__ */ __name(({
|
|
|
6480
5811
|
availableTerminalHeight,
|
|
6481
5812
|
contentWidth,
|
|
6482
5813
|
textColor = theme.text.primary,
|
|
6483
|
-
sourceCopyIndexOffsets
|
|
5814
|
+
sourceCopyIndexOffsets,
|
|
5815
|
+
enforceHeightBudget = false
|
|
6484
5816
|
}) => {
|
|
6485
5817
|
const { renderMode } = useRenderMode();
|
|
6486
5818
|
if (!text) return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_jsx_runtime6.Fragment, {});
|
|
6487
5819
|
const renderVisualBlocks = renderMode === "render";
|
|
6488
5820
|
const displayText = isPending ? text.trimEnd() : text;
|
|
6489
5821
|
const allLines = displayText.split(/\r?\n/);
|
|
6490
|
-
const pendingRenderedBudget = isPending && availableTerminalHeight !== void 0 ? Math.max(MIN_PENDING_CONTENT_LINES, availableTerminalHeight - 2) : void 0;
|
|
5822
|
+
const pendingRenderedBudget = (isPending || enforceHeightBudget) && availableTerminalHeight !== void 0 ? Math.max(MIN_PENDING_CONTENT_LINES, availableTerminalHeight - 2) : void 0;
|
|
6491
5823
|
const headerRegex = /^ *(#{1,4}) +(.*)/;
|
|
6492
5824
|
const codeFenceRegex = CODE_FENCE_RE;
|
|
6493
5825
|
const ulItemRegex = /^([ \t]*)([-*+]) +(.*)/;
|
|
@@ -6498,6 +5830,7 @@ var MarkdownDisplayInternal = /* @__PURE__ */ __name(({
|
|
|
6498
5830
|
const tableRowRegex = TABLE_ROW_RE;
|
|
6499
5831
|
const tableSeparatorRegex = TABLE_SEPARATOR_RE;
|
|
6500
5832
|
let lines = allLines;
|
|
5833
|
+
let droppedSourceLines = 0;
|
|
6501
5834
|
if (pendingRenderedBudget !== void 0) {
|
|
6502
5835
|
const tableClampRows = availableTerminalHeight !== void 0 ? Math.max(2, availableTerminalHeight - TABLE_PENDING_RESERVED_ROWS) : Number.MAX_SAFE_INTEGER;
|
|
6503
5836
|
const { keptLines } = fitPendingSlice(
|
|
@@ -6508,8 +5841,10 @@ var MarkdownDisplayInternal = /* @__PURE__ */ __name(({
|
|
|
6508
5841
|
);
|
|
6509
5842
|
if (keptLines < allLines.length) {
|
|
6510
5843
|
lines = allLines.slice(0, keptLines);
|
|
5844
|
+
droppedSourceLines = allLines.length - keptLines;
|
|
6511
5845
|
}
|
|
6512
5846
|
}
|
|
5847
|
+
const showTruncationCue = enforceHeightBudget && !isPending && droppedSourceLines > 0;
|
|
6513
5848
|
if (isPending && renderVisualBlocks && lines.length > 0) {
|
|
6514
5849
|
let start = lines.length;
|
|
6515
5850
|
while (start > 0 && /^\s*\|/.test(lines[start - 1])) start--;
|
|
@@ -6935,6 +6270,19 @@ var MarkdownDisplayInternal = /* @__PURE__ */ __name(({
|
|
|
6935
6270
|
)
|
|
6936
6271
|
);
|
|
6937
6272
|
}
|
|
6273
|
+
if (showTruncationCue) {
|
|
6274
|
+
contentBlocks.push(
|
|
6275
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
6276
|
+
Text,
|
|
6277
|
+
{
|
|
6278
|
+
color: theme.text.secondary,
|
|
6279
|
+
wrap: "truncate-end",
|
|
6280
|
+
children: `... ${droppedSourceLines} more line${droppedSourceLines === 1 ? "" : "s"} not shown (viewport too small) ...`
|
|
6281
|
+
},
|
|
6282
|
+
`truncation-cue-${contentBlocks.length}`
|
|
6283
|
+
)
|
|
6284
|
+
);
|
|
6285
|
+
}
|
|
6938
6286
|
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_jsx_runtime6.Fragment, { children: contentBlocks });
|
|
6939
6287
|
}, "MarkdownDisplayInternal");
|
|
6940
6288
|
var RenderCodeBlockInternal = /* @__PURE__ */ __name(({
|
|
@@ -9253,15 +8601,15 @@ var isCjkChar = /* @__PURE__ */ __name((char) => CJK_CHAR_REGEX.test(char), "isC
|
|
|
9253
8601
|
var WORD_BOUNDARIES_CACHE_MAX = 500;
|
|
9254
8602
|
var SEGMENTER_LENGTH_LIMIT = 1500;
|
|
9255
8603
|
var wordBoundariesCache = null;
|
|
9256
|
-
var
|
|
8604
|
+
var segmenter = null;
|
|
9257
8605
|
function ensureSegmenterLoaded() {
|
|
9258
|
-
if (
|
|
8606
|
+
if (segmenter !== null) return;
|
|
9259
8607
|
try {
|
|
9260
|
-
|
|
8608
|
+
segmenter = new Intl.Segmenter("zh", { granularity: "word" });
|
|
9261
8609
|
debugLogger4.info("Intl.Segmenter: initialized successfully");
|
|
9262
8610
|
} catch (err) {
|
|
9263
8611
|
debugLogger4.warn("Intl.Segmenter: failed to initialize", err);
|
|
9264
|
-
|
|
8612
|
+
segmenter = false;
|
|
9265
8613
|
}
|
|
9266
8614
|
}
|
|
9267
8615
|
__name(ensureSegmenterLoaded, "ensureSegmenterLoaded");
|
|
@@ -9301,14 +8649,14 @@ function getWordBoundaries(line, codePoints) {
|
|
|
9301
8649
|
return cached;
|
|
9302
8650
|
}
|
|
9303
8651
|
ensureSegmenterLoaded();
|
|
9304
|
-
if (!
|
|
8652
|
+
if (!segmenter) {
|
|
9305
8653
|
const fallback = charByCharFallback(line);
|
|
9306
8654
|
evictCacheIfNeeded();
|
|
9307
8655
|
wordBoundariesCache.set(line, fallback);
|
|
9308
8656
|
return fallback;
|
|
9309
8657
|
}
|
|
9310
8658
|
try {
|
|
9311
|
-
const segments =
|
|
8659
|
+
const segments = segmenter.segment(line);
|
|
9312
8660
|
const cpToStrIdx = [];
|
|
9313
8661
|
let strIdx = 0;
|
|
9314
8662
|
for (let i = 0; i < cps.length; i++) {
|
|
@@ -12033,7 +11381,8 @@ var ToolConfirmationMessage = /* @__PURE__ */ __name(({
|
|
|
12033
11381
|
text: planProps.plan,
|
|
12034
11382
|
isPending: false,
|
|
12035
11383
|
availableTerminalHeight: planHeight,
|
|
12036
|
-
contentWidth
|
|
11384
|
+
contentWidth,
|
|
11385
|
+
enforceHeightBudget: true
|
|
12037
11386
|
}
|
|
12038
11387
|
) });
|
|
12039
11388
|
} else if (confirmationDetails.type === "info") {
|
|
@@ -12656,7 +12005,11 @@ var ToolMessage = /* @__PURE__ */ __name(({
|
|
|
12656
12005
|
() => usingDetailedDisplay && typeof detailedDisplay === "string" ? sanitizeTerminalText(detailedDisplay) : detailedDisplay,
|
|
12657
12006
|
[detailedDisplay, usingDetailedDisplay]
|
|
12658
12007
|
);
|
|
12659
|
-
const
|
|
12008
|
+
const visionBridgeNoticeDisplay = isVisionBridgeNoticeDisplay(resultDisplay) ? resultDisplay : void 0;
|
|
12009
|
+
const visionBridgeNoticeText = visionBridgeNoticeDisplay ? sanitizeTerminalText(
|
|
12010
|
+
formatVisionBridgeNoticeDisplay(visionBridgeNoticeDisplay)
|
|
12011
|
+
) : void 0;
|
|
12012
|
+
const effectiveResultDisplay = usingDetailedDisplay ? sanitizedDetailedDisplay : visionBridgeNoticeDisplay ? void 0 : resultDisplay;
|
|
12660
12013
|
if (usingDetailedDisplay) {
|
|
12661
12014
|
renderOutputAsMarkdown = false;
|
|
12662
12015
|
}
|
|
@@ -12687,6 +12040,14 @@ var ToolMessage = /* @__PURE__ */ __name(({
|
|
|
12687
12040
|
),
|
|
12688
12041
|
emphasis === "high" && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(TrailingIndicator, {})
|
|
12689
12042
|
] }),
|
|
12043
|
+
visionBridgeNoticeText && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Box_default, { paddingLeft: STATUS_INDICATOR_WIDTH, width: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
12044
|
+
StringResultRenderer,
|
|
12045
|
+
{
|
|
12046
|
+
data: visionBridgeNoticeText,
|
|
12047
|
+
renderAsMarkdown: false,
|
|
12048
|
+
childWidth: innerWidth
|
|
12049
|
+
}
|
|
12050
|
+
) }),
|
|
12690
12051
|
effectiveDisplayRenderer.type !== "none" && !shouldCollapseResult && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Box_default, { paddingLeft: STATUS_INDICATOR_WIDTH, width: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(Box_default, { flexDirection: "column", children: [
|
|
12691
12052
|
effectiveDisplayRenderer.type === "todo" && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(TodoResultRenderer, { data: effectiveDisplayRenderer.data }),
|
|
12692
12053
|
effectiveDisplayRenderer.type === "plan" && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
@@ -13089,7 +12450,10 @@ var ToolGroupMessage = /* @__PURE__ */ __name(({
|
|
|
13089
12450
|
memoryBadge
|
|
13090
12451
|
] });
|
|
13091
12452
|
}
|
|
13092
|
-
const collapsibleSummaryHeight =
|
|
12453
|
+
const collapsibleSummaryHeight = estimateCompactToolGroupHeight(
|
|
12454
|
+
collapsibleTools,
|
|
12455
|
+
contentWidth
|
|
12456
|
+
);
|
|
13093
12457
|
const memoryBadgeHeight = hasMemoryBadge ? 1 : 0;
|
|
13094
12458
|
const staticHeight = (
|
|
13095
12459
|
/* marginBottom */
|
|
@@ -16987,6 +16351,7 @@ var ClickableThinkMessage = /* @__PURE__ */ __name(({
|
|
|
16987
16351
|
onToggle
|
|
16988
16352
|
}) => {
|
|
16989
16353
|
const ref = (0, import_react34.useRef)(null);
|
|
16354
|
+
const { rows: terminalHeight } = useTerminalSize();
|
|
16990
16355
|
const settings = useSettings();
|
|
16991
16356
|
const clickable = !!settings.merged.ui?.useTerminalBuffer;
|
|
16992
16357
|
const isActive = !isPending;
|
|
@@ -16996,12 +16361,12 @@ var ClickableThinkMessage = /* @__PURE__ */ __name(({
|
|
|
16996
16361
|
if (event.name !== "left-press" || !ref.current) return;
|
|
16997
16362
|
const metrics = measureElementPosition(ref.current);
|
|
16998
16363
|
const col = event.col - 1;
|
|
16999
|
-
const row = event.row
|
|
16364
|
+
const row = layoutRowForEvent(ref.current, event.row, terminalHeight);
|
|
17000
16365
|
if (col >= metrics.x && col < metrics.x + metrics.width && row >= metrics.y && row < metrics.y + metrics.height) {
|
|
17001
16366
|
onToggle();
|
|
17002
16367
|
}
|
|
17003
16368
|
},
|
|
17004
|
-
[onToggle]
|
|
16369
|
+
[onToggle, terminalHeight]
|
|
17005
16370
|
),
|
|
17006
16371
|
{ isActive }
|
|
17007
16372
|
);
|