@costrict/csc 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (535) hide show
  1. package/README.md +398 -0
  2. package/dist/chunk-04hza677.js +24 -0
  3. package/dist/chunk-0559sa47.js +269 -0
  4. package/dist/chunk-06saje2v.js +39 -0
  5. package/dist/chunk-07069jq1.js +30 -0
  6. package/dist/chunk-070x53zd.js +2377 -0
  7. package/dist/chunk-0731m51q.js +8 -0
  8. package/dist/chunk-0858agqy.js +481 -0
  9. package/dist/chunk-09vwyeam.js +16 -0
  10. package/dist/chunk-0h5jp1k7.js +142 -0
  11. package/dist/chunk-0hhpf3sk.js +703 -0
  12. package/dist/chunk-0rpb2bdp.js +8 -0
  13. package/dist/chunk-0vkfrmqm.js +690 -0
  14. package/dist/chunk-0xjaqda8.js +1124 -0
  15. package/dist/chunk-0xv28twy.js +140 -0
  16. package/dist/chunk-0yrqcj0z.js +117 -0
  17. package/dist/chunk-1141xmr4.js +8 -0
  18. package/dist/chunk-11nzax0s.js +38 -0
  19. package/dist/chunk-13hhjhs8.js +1299 -0
  20. package/dist/chunk-15yrwc9c.js +110 -0
  21. package/dist/chunk-168xb8v1.js +436 -0
  22. package/dist/chunk-1a1qct3y.js +120 -0
  23. package/dist/chunk-1cwdhk7a.js +969 -0
  24. package/dist/chunk-1dz5e26z.js +726 -0
  25. package/dist/chunk-1h2famwb.js +49 -0
  26. package/dist/chunk-1hreef20.js +27 -0
  27. package/dist/chunk-1mpdkjdj.js +66 -0
  28. package/dist/chunk-1pvfqrpv.js +78 -0
  29. package/dist/chunk-1r1zzbv3.js +112 -0
  30. package/dist/chunk-1rvwfjaq.js +71 -0
  31. package/dist/chunk-1w2y3m4g.js +47290 -0
  32. package/dist/chunk-1xf1hn04.js +366 -0
  33. package/dist/chunk-225mq9kr.js +908 -0
  34. package/dist/chunk-238g70xa.js +36 -0
  35. package/dist/chunk-23my8c16.js +516 -0
  36. package/dist/chunk-26wtxbdc.js +13870 -0
  37. package/dist/chunk-2a42s11t.js +412 -0
  38. package/dist/chunk-2eykm0j0.js +20 -0
  39. package/dist/chunk-2fwze72g.js +24 -0
  40. package/dist/chunk-2gdm9hp2.js +1179 -0
  41. package/dist/chunk-2gzv8nrw.js +205 -0
  42. package/dist/chunk-2jb168ef.js +772 -0
  43. package/dist/chunk-2k995y2x.js +880 -0
  44. package/dist/chunk-2nayx6q1.js +63 -0
  45. package/dist/chunk-2p2kknmh.js +165 -0
  46. package/dist/chunk-2qa6bvek.js +146 -0
  47. package/dist/chunk-2qz6r4n3.js +74 -0
  48. package/dist/chunk-2s460rgh.js +61 -0
  49. package/dist/chunk-2wv3ttqg.js +199 -0
  50. package/dist/chunk-2wvz22ag.js +71 -0
  51. package/dist/chunk-2wz9qb4j.js +164 -0
  52. package/dist/chunk-30rst83v.js +168 -0
  53. package/dist/chunk-39jcea92.js +737 -0
  54. package/dist/chunk-3bes9fg8.js +78 -0
  55. package/dist/chunk-3c25bcsw.js +17 -0
  56. package/dist/chunk-3cg807vs.js +38 -0
  57. package/dist/chunk-3dy7fxmg.js +1072 -0
  58. package/dist/chunk-3h8a89gy.js +46 -0
  59. package/dist/chunk-3j0f3yyd.js +17 -0
  60. package/dist/chunk-3mgywd32.js +8 -0
  61. package/dist/chunk-3ng1qsw3.js +281 -0
  62. package/dist/chunk-3nk79af8.js +8 -0
  63. package/dist/chunk-3ns6ys7f.js +1648 -0
  64. package/dist/chunk-3sj7jkgr.js +35 -0
  65. package/dist/chunk-3tg3p70s.js +513 -0
  66. package/dist/chunk-3v18yz1s.js +21933 -0
  67. package/dist/chunk-3vxgde8h.js +830 -0
  68. package/dist/chunk-3w6s9m5w.js +16 -0
  69. package/dist/chunk-3x2jaxpw.js +254 -0
  70. package/dist/chunk-3xyekzfn.js +113 -0
  71. package/dist/chunk-3yeacwwq.js +115 -0
  72. package/dist/chunk-3z5e623j.js +130 -0
  73. package/dist/chunk-3z9478wf.js +14 -0
  74. package/dist/chunk-46fcr28b.js +131 -0
  75. package/dist/chunk-495d85x1.js +8066 -0
  76. package/dist/chunk-4bfwebv9.js +276 -0
  77. package/dist/chunk-4g3v8y12.js +23 -0
  78. package/dist/chunk-4gn5yqrx.js +79 -0
  79. package/dist/chunk-4jfp4pr0.js +24 -0
  80. package/dist/chunk-4jm600zv.js +13 -0
  81. package/dist/chunk-4nspekjp.js +69 -0
  82. package/dist/chunk-4pbx3g7s.js +26 -0
  83. package/dist/chunk-4t6efhvx.js +102 -0
  84. package/dist/chunk-4te4ttsn.js +42 -0
  85. package/dist/chunk-4x6wg2kg.js +254 -0
  86. package/dist/chunk-4y23e4m9.js +399 -0
  87. package/dist/chunk-4zfkzkt6.js +37 -0
  88. package/dist/chunk-4zh96y27.js +202 -0
  89. package/dist/chunk-512kh02z.js +117 -0
  90. package/dist/chunk-538ydk68.js +85 -0
  91. package/dist/chunk-56ax2vae.js +255 -0
  92. package/dist/chunk-56r79b2b.js +69 -0
  93. package/dist/chunk-57zse1aw.js +393 -0
  94. package/dist/chunk-5c5xde65.js +229 -0
  95. package/dist/chunk-5c8g21yn.js +334 -0
  96. package/dist/chunk-5hfekx34.js +158 -0
  97. package/dist/chunk-5j8wked2.js +125 -0
  98. package/dist/chunk-5krq9sjq.js +291 -0
  99. package/dist/chunk-5kstcfhs.js +180 -0
  100. package/dist/chunk-5q9t5raw.js +1077 -0
  101. package/dist/chunk-5z0vwms1.js +20 -0
  102. package/dist/chunk-5z28bqne.js +6748 -0
  103. package/dist/chunk-616twzqj.js +17 -0
  104. package/dist/chunk-62me46b4.js +115 -0
  105. package/dist/chunk-62xkxk9z.js +32 -0
  106. package/dist/chunk-64c1avct.js +13 -0
  107. package/dist/chunk-677as3nh.js +15 -0
  108. package/dist/chunk-68jt10ky.js +170 -0
  109. package/dist/chunk-6aspnjtj.js +213 -0
  110. package/dist/chunk-6bd8brc4.js +48 -0
  111. package/dist/chunk-6dj5t602.js +341 -0
  112. package/dist/chunk-6e7578mb.js +183 -0
  113. package/dist/chunk-6gr3c3w9.js +378 -0
  114. package/dist/chunk-6km733xr.js +1393 -0
  115. package/dist/chunk-6kpdq5vp.js +269 -0
  116. package/dist/chunk-6mzwkxka.js +591 -0
  117. package/dist/chunk-6n4rgw3j.js +308 -0
  118. package/dist/chunk-6p4cyhb3.js +16 -0
  119. package/dist/chunk-6ps660aq.js +177 -0
  120. package/dist/chunk-6rvt67cg.js +156 -0
  121. package/dist/chunk-6tq2v3rk.js +186 -0
  122. package/dist/chunk-6vhnnq2y.js +1410 -0
  123. package/dist/chunk-6wyva7w0.js +208 -0
  124. package/dist/chunk-6x0hj15f.js +502 -0
  125. package/dist/chunk-71pmx33m.js +367 -0
  126. package/dist/chunk-71ynp714.js +101 -0
  127. package/dist/chunk-73rpbt04.js +1947 -0
  128. package/dist/chunk-74vem2p2.js +34238 -0
  129. package/dist/chunk-760252na.js +101 -0
  130. package/dist/chunk-7739pg2c.js +4261 -0
  131. package/dist/chunk-78ynhtwg.js +71 -0
  132. package/dist/chunk-7aw745vx.js +40175 -0
  133. package/dist/chunk-7ethp9j4.js +785 -0
  134. package/dist/chunk-7f9h59mx.js +123 -0
  135. package/dist/chunk-7gwn2q3t.js +267 -0
  136. package/dist/chunk-7j39efa9.js +4521 -0
  137. package/dist/chunk-7nzp7c14.js +113 -0
  138. package/dist/chunk-7p0pvq5a.js +1189 -0
  139. package/dist/chunk-7pe7wxtx.js +37 -0
  140. package/dist/chunk-7wm5s02e.js +216 -0
  141. package/dist/chunk-7xyswgjh.js +8 -0
  142. package/dist/chunk-80ex85y3.js +231 -0
  143. package/dist/chunk-80v8c3v8.js +94 -0
  144. package/dist/chunk-8225arm6.js +6374 -0
  145. package/dist/chunk-82eajk9f.js +885 -0
  146. package/dist/chunk-83hfzbx3.js +10 -0
  147. package/dist/chunk-84bn8nbd.js +130 -0
  148. package/dist/chunk-85em0j2s.js +61 -0
  149. package/dist/chunk-86vz5aga.js +585 -0
  150. package/dist/chunk-86zqm75k.js +119 -0
  151. package/dist/chunk-894yt5ch.js +127 -0
  152. package/dist/chunk-89f30geq.js +114 -0
  153. package/dist/chunk-89m2z6cf.js +542 -0
  154. package/dist/chunk-89spcmeg.js +203 -0
  155. package/dist/chunk-8a1q7y7t.js +38 -0
  156. package/dist/chunk-8b9j5s4r.js +22 -0
  157. package/dist/chunk-8g5pe1gr.js +37 -0
  158. package/dist/chunk-8h45f69y.js +151 -0
  159. package/dist/chunk-8henn231.js +63 -0
  160. package/dist/chunk-8jprqan8.js +1580 -0
  161. package/dist/chunk-8pn8tvgg.js +637 -0
  162. package/dist/chunk-8psrvmy6.js +797 -0
  163. package/dist/chunk-8sq45snx.js +1585 -0
  164. package/dist/chunk-8tj3ttfr.js +122 -0
  165. package/dist/chunk-8tnsngw2.js +31 -0
  166. package/dist/chunk-8y12jxg8.js +10 -0
  167. package/dist/chunk-8ymf4e6z.js +48 -0
  168. package/dist/chunk-8yrcxv0n.js +17 -0
  169. package/dist/chunk-90wp6wez.js +10510 -0
  170. package/dist/chunk-92cm1qp0.js +387 -0
  171. package/dist/chunk-95g4wtbk.js +83 -0
  172. package/dist/chunk-95h99qt5.js +350 -0
  173. package/dist/chunk-9663bsk0.js +15 -0
  174. package/dist/chunk-96mf19ww.js +130 -0
  175. package/dist/chunk-97kwfkef.js +172626 -0
  176. package/dist/chunk-9d4wp328.js +121 -0
  177. package/dist/chunk-9h9j6e8f.js +340 -0
  178. package/dist/chunk-9k8qsaph.js +33068 -0
  179. package/dist/chunk-9mfbqw9k.js +24 -0
  180. package/dist/chunk-9n6x41fh.js +89 -0
  181. package/dist/chunk-9nsdc461.js +43 -0
  182. package/dist/chunk-9nyem167.js +68 -0
  183. package/dist/chunk-9q3r5pd2.js +80 -0
  184. package/dist/chunk-9wf38cty.js +83 -0
  185. package/dist/chunk-9x5zgy22.js +12 -0
  186. package/dist/chunk-a136cvvz.js +27 -0
  187. package/dist/chunk-a4twdmhf.js +45 -0
  188. package/dist/chunk-a53syfz4.js +348 -0
  189. package/dist/chunk-a783nmpc.js +240 -0
  190. package/dist/chunk-a8ejc632.js +3094 -0
  191. package/dist/chunk-a9vdeb6y.js +258 -0
  192. package/dist/chunk-a9zh40sj.js +48 -0
  193. package/dist/chunk-ae76ded0.js +30 -0
  194. package/dist/chunk-akdsj21e.js +37 -0
  195. package/dist/chunk-ase86y73.js +15 -0
  196. package/dist/chunk-avb9ff81.js +98 -0
  197. package/dist/chunk-ayydhscx.js +26 -0
  198. package/dist/chunk-az3db85f.js +301 -0
  199. package/dist/chunk-az7hwp39.js +111 -0
  200. package/dist/chunk-b4wg70y1.js +54 -0
  201. package/dist/chunk-b81hd3m6.js +32 -0
  202. package/dist/chunk-ba17dx50.js +30 -0
  203. package/dist/chunk-bcfd2zw7.js +20 -0
  204. package/dist/chunk-bcv6qax7.js +32 -0
  205. package/dist/chunk-bef1t5q0.js +1460 -0
  206. package/dist/chunk-bend4tmg.js +208 -0
  207. package/dist/chunk-bhxz6rzk.js +475 -0
  208. package/dist/chunk-bj6k61m9.js +130 -0
  209. package/dist/chunk-bnrctxq5.js +112 -0
  210. package/dist/chunk-bt64sq5y.js +19 -0
  211. package/dist/chunk-bxcfz5gy.js +56 -0
  212. package/dist/chunk-c11k4btd.js +1095 -0
  213. package/dist/chunk-c3eaj3gr.js +2997 -0
  214. package/dist/chunk-c51ns2ke.js +40 -0
  215. package/dist/chunk-c5kags80.js +141 -0
  216. package/dist/chunk-c6sjhj89.js +1284 -0
  217. package/dist/chunk-c77cvfqz.js +14 -0
  218. package/dist/chunk-cb68zyey.js +117 -0
  219. package/dist/chunk-cczpp302.js +223 -0
  220. package/dist/chunk-ce2v5y9y.js +338 -0
  221. package/dist/chunk-cfv996bs.js +22 -0
  222. package/dist/chunk-cgfdkzhb.js +12 -0
  223. package/dist/chunk-cj3ptgbw.js +918 -0
  224. package/dist/chunk-ck22v5n3.js +2745 -0
  225. package/dist/chunk-ck4be14j.js +8588 -0
  226. package/dist/chunk-cmwfcp4h.js +120 -0
  227. package/dist/chunk-cnsj3vq2.js +35 -0
  228. package/dist/chunk-cnvsytvx.js +182 -0
  229. package/dist/chunk-cp1aqm3d.js +66 -0
  230. package/dist/chunk-cpgjt97m.js +126 -0
  231. package/dist/chunk-cqrdcwc6.js +115 -0
  232. package/dist/chunk-crmjpsqe.js +68 -0
  233. package/dist/chunk-ctya0ggm.js +1606 -0
  234. package/dist/chunk-cvkzqcxn.js +26 -0
  235. package/dist/chunk-d4mdda98.js +94 -0
  236. package/dist/chunk-d8vwvym7.js +693 -0
  237. package/dist/chunk-d8xwx5h7.js +431 -0
  238. package/dist/chunk-dgepe1tj.js +557 -0
  239. package/dist/chunk-dggvswz1.js +104 -0
  240. package/dist/chunk-dgqrcy74.js +48 -0
  241. package/dist/chunk-dhgfme5s.js +622 -0
  242. package/dist/chunk-dkzwgrsa.js +336 -0
  243. package/dist/chunk-dmfnhfbm.js +63 -0
  244. package/dist/chunk-dnh7jtpb.js +37 -0
  245. package/dist/chunk-drtj50ge.js +112 -0
  246. package/dist/chunk-dtj6da60.js +173 -0
  247. package/dist/chunk-e3jdmhj3.js +122 -0
  248. package/dist/chunk-e5ey47fq.js +78 -0
  249. package/dist/chunk-ehtwnxpg.js +1591 -0
  250. package/dist/chunk-enz148g9.js +79 -0
  251. package/dist/chunk-eq5csq9z.js +147 -0
  252. package/dist/chunk-eqp1rfft.js +17 -0
  253. package/dist/chunk-ers3hn71.js +58 -0
  254. package/dist/chunk-evs073nf.js +9300 -0
  255. package/dist/chunk-ew2qn2ct.js +128 -0
  256. package/dist/chunk-ewadzrm8.js +103 -0
  257. package/dist/chunk-ewhxrzr7.js +282 -0
  258. package/dist/chunk-f076572y.js +29 -0
  259. package/dist/chunk-f1fd8rrx.js +458 -0
  260. package/dist/chunk-f2mhrmww.js +62 -0
  261. package/dist/chunk-f2rspz95.js +661 -0
  262. package/dist/chunk-f4evkbn3.js +109 -0
  263. package/dist/chunk-f5ma3nh5.js +3436 -0
  264. package/dist/chunk-f77bmbss.js +262 -0
  265. package/dist/chunk-fafwc5w7.js +63 -0
  266. package/dist/chunk-fas0j37w.js +206 -0
  267. package/dist/chunk-fbv4apne.js +51 -0
  268. package/dist/chunk-fbvwrs77.js +74 -0
  269. package/dist/chunk-feyzykye.js +10 -0
  270. package/dist/chunk-fk80f449.js +29032 -0
  271. package/dist/chunk-fqz39wqc.js +2754 -0
  272. package/dist/chunk-fs870v81.js +321 -0
  273. package/dist/chunk-fvrd2wnw.js +119 -0
  274. package/dist/chunk-fwqpwb0b.js +68 -0
  275. package/dist/chunk-fyc5fepv.js +10 -0
  276. package/dist/chunk-fz0ch109.js +329 -0
  277. package/dist/chunk-fzsn5y4x.js +74 -0
  278. package/dist/chunk-g1k68z1b.js +15 -0
  279. package/dist/chunk-g338npwr.js +1061 -0
  280. package/dist/chunk-g4mn27j2.js +125 -0
  281. package/dist/chunk-g5k4zxrz.js +285 -0
  282. package/dist/chunk-g7hbj02n.js +47 -0
  283. package/dist/chunk-g9f19ttm.js +15 -0
  284. package/dist/chunk-gmpnr1zb.js +248 -0
  285. package/dist/chunk-gnsx2xas.js +58 -0
  286. package/dist/chunk-gr2j2pnw.js +449 -0
  287. package/dist/chunk-gs8skfag.js +700 -0
  288. package/dist/chunk-gte39pa1.js +62 -0
  289. package/dist/chunk-gvee52bj.js +41 -0
  290. package/dist/chunk-gzvt7jsh.js +109 -0
  291. package/dist/chunk-gzykgb04.js +445 -0
  292. package/dist/chunk-h0qngp9w.js +157 -0
  293. package/dist/chunk-h4b85amj.js +2331 -0
  294. package/dist/chunk-h5w7hchy.js +851 -0
  295. package/dist/chunk-hakdhagh.js +16606 -0
  296. package/dist/chunk-hamq5sbn.js +398 -0
  297. package/dist/chunk-hezhnvr6.js +369 -0
  298. package/dist/chunk-hh7cmy4k.js +20 -0
  299. package/dist/chunk-hhgyxd84.js +259 -0
  300. package/dist/chunk-hk9xz7gk.js +118 -0
  301. package/dist/chunk-hkn7tzgv.js +2007 -0
  302. package/dist/chunk-hnafabz8.js +266 -0
  303. package/dist/chunk-hqhmy4sg.js +4181 -0
  304. package/dist/chunk-hvdbzsar.js +127 -0
  305. package/dist/chunk-hzhe8ygc.js +547 -0
  306. package/dist/chunk-j05addbw.js +132 -0
  307. package/dist/chunk-j2k4p94p.js +55 -0
  308. package/dist/chunk-j3a4p81y.js +184 -0
  309. package/dist/chunk-j5bth84e.js +97 -0
  310. package/dist/chunk-j64ga6ta.js +8035 -0
  311. package/dist/chunk-j7e5xs2n.js +225 -0
  312. package/dist/chunk-j9gxwbe3.js +349 -0
  313. package/dist/chunk-jaaxk89e.js +113 -0
  314. package/dist/chunk-jbe9jra5.js +132 -0
  315. package/dist/chunk-jd32zbps.js +15 -0
  316. package/dist/chunk-jdgeec04.js +4249 -0
  317. package/dist/chunk-jhvzhfs0.js +61 -0
  318. package/dist/chunk-jmczk6av.js +173 -0
  319. package/dist/chunk-jmmy2389.js +146 -0
  320. package/dist/chunk-jmt3t5ka.js +655 -0
  321. package/dist/chunk-jnhkref0.js +30 -0
  322. package/dist/chunk-jrw2ydrt.js +122 -0
  323. package/dist/chunk-jwrvnvn4.js +40 -0
  324. package/dist/chunk-jzmz18nn.js +65 -0
  325. package/dist/chunk-k04vbmv4.js +646 -0
  326. package/dist/chunk-k0p9w03v.js +4957 -0
  327. package/dist/chunk-k3dhz0k9.js +135 -0
  328. package/dist/chunk-k3s4yk22.js +477 -0
  329. package/dist/chunk-k9ssqns7.js +32 -0
  330. package/dist/chunk-kadfnk84.js +182 -0
  331. package/dist/chunk-kddy2dqe.js +251 -0
  332. package/dist/chunk-kfd89dsd.js +21 -0
  333. package/dist/chunk-kqnj25tn.js +6956 -0
  334. package/dist/chunk-kt7g00mq.js +435 -0
  335. package/dist/chunk-kwdta9bw.js +3437 -0
  336. package/dist/chunk-kwekc97v.js +18 -0
  337. package/dist/chunk-kyqp0hdk.js +410 -0
  338. package/dist/chunk-m19387gd.js +192 -0
  339. package/dist/chunk-m1k6c44h.js +97 -0
  340. package/dist/chunk-m2bcpk8j.js +30 -0
  341. package/dist/chunk-m2f2brtj.js +290 -0
  342. package/dist/chunk-m3vd4kjb.js +895 -0
  343. package/dist/chunk-m4y35n20.js +2845 -0
  344. package/dist/chunk-m53f3dw3.js +237 -0
  345. package/dist/chunk-m7e9yz7v.js +112 -0
  346. package/dist/chunk-m7gb3xym.js +196 -0
  347. package/dist/chunk-m85hmjj5.js +446 -0
  348. package/dist/chunk-mafty4rg.js +30 -0
  349. package/dist/chunk-mbgrtfd1.js +67 -0
  350. package/dist/chunk-mc9gapvy.js +1811 -0
  351. package/dist/chunk-md75xjhp.js +283 -0
  352. package/dist/chunk-mdkxrfbj.js +666 -0
  353. package/dist/chunk-mfq8d0nf.js +126 -0
  354. package/dist/chunk-mg4j7qa1.js +192 -0
  355. package/dist/chunk-mjnb2hkr.js +132 -0
  356. package/dist/chunk-mnc0y0d0.js +190 -0
  357. package/dist/chunk-mpvn2d5c.js +155 -0
  358. package/dist/chunk-mr2kw49k.js +116 -0
  359. package/dist/chunk-ms3y5kf0.js +252 -0
  360. package/dist/chunk-mwz7he7v.js +169 -0
  361. package/dist/chunk-mx28h61f.js +1147 -0
  362. package/dist/chunk-my3kzsjn.js +99 -0
  363. package/dist/chunk-n0a4xh5h.js +128 -0
  364. package/dist/chunk-n0qaeaa5.js +256 -0
  365. package/dist/chunk-n24pwjkp.js +139 -0
  366. package/dist/chunk-n2qz0nhv.js +93 -0
  367. package/dist/chunk-n7d8481f.js +68 -0
  368. package/dist/chunk-n7ttdtk0.js +641 -0
  369. package/dist/chunk-n9axs6t8.js +716 -0
  370. package/dist/chunk-netzwgv1.js +154 -0
  371. package/dist/chunk-nh3cd07f.js +14358 -0
  372. package/dist/chunk-njhgsxjj.js +237 -0
  373. package/dist/chunk-nk5x8t2h.js +132 -0
  374. package/dist/chunk-nka1g8f4.js +773 -0
  375. package/dist/chunk-nneembm7.js +31 -0
  376. package/dist/chunk-nq0fxyxh.js +752 -0
  377. package/dist/chunk-nt837qt9.js +21 -0
  378. package/dist/chunk-p0ng6w7n.js +315 -0
  379. package/dist/chunk-p1e5ajm6.js +90 -0
  380. package/dist/chunk-p2816w9z.js +1486 -0
  381. package/dist/chunk-p2d5nh3g.js +342 -0
  382. package/dist/chunk-p3a8pcmp.js +780 -0
  383. package/dist/chunk-p5rg8b87.js +157 -0
  384. package/dist/chunk-p7vkh4wx.js +15 -0
  385. package/dist/chunk-p99pzx02.js +65 -0
  386. package/dist/chunk-p9ce1a80.js +279 -0
  387. package/dist/chunk-pakvqawt.js +2544 -0
  388. package/dist/chunk-pfc94kdv.js +5387 -0
  389. package/dist/chunk-pfnzae5b.js +71 -0
  390. package/dist/chunk-pgyrvzpr.js +862 -0
  391. package/dist/chunk-pj77mrv7.js +879 -0
  392. package/dist/chunk-pk3s1vqt.js +136 -0
  393. package/dist/chunk-ppwjyveh.js +8 -0
  394. package/dist/chunk-ps1ds612.js +183 -0
  395. package/dist/chunk-ps49ymvj.js +43 -0
  396. package/dist/chunk-pshjyzq4.js +17656 -0
  397. package/dist/chunk-pskjqhz7.js +116 -0
  398. package/dist/chunk-pvc81kgd.js +1030 -0
  399. package/dist/chunk-pwwa7s62.js +11 -0
  400. package/dist/chunk-q3j9ktw6.js +313 -0
  401. package/dist/chunk-q4t5gjz6.js +180 -0
  402. package/dist/chunk-q7tpyeb3.js +39 -0
  403. package/dist/chunk-q82r31er.js +151 -0
  404. package/dist/chunk-qajrkk97.js +298 -0
  405. package/dist/chunk-qb6ej6am.js +118 -0
  406. package/dist/chunk-qbrsmra3.js +23 -0
  407. package/dist/chunk-qezabsdm.js +65 -0
  408. package/dist/chunk-qfdazq4f.js +81 -0
  409. package/dist/chunk-qjb5b625.js +382 -0
  410. package/dist/chunk-qjeytdb7.js +47 -0
  411. package/dist/chunk-qkn19vqd.js +116 -0
  412. package/dist/chunk-qnfx3qtx.js +617 -0
  413. package/dist/chunk-qp1047f9.js +16239 -0
  414. package/dist/chunk-qp2qdcda.js +100 -0
  415. package/dist/chunk-qtfc6wdh.js +19 -0
  416. package/dist/chunk-qvpvpfby.js +4951 -0
  417. package/dist/chunk-qwcs5mar.js +151 -0
  418. package/dist/chunk-qywms8ma.js +84 -0
  419. package/dist/chunk-qz2x630m.js +49145 -0
  420. package/dist/chunk-r1c1vckq.js +606 -0
  421. package/dist/chunk-r1cmrvhq.js +660 -0
  422. package/dist/chunk-r4w1khtr.js +479 -0
  423. package/dist/chunk-r5c7ntjh.js +308 -0
  424. package/dist/chunk-r6pqswky.js +118 -0
  425. package/dist/chunk-rcpmj2s6.js +51 -0
  426. package/dist/chunk-re5rh06v.js +151 -0
  427. package/dist/chunk-reta5k4w.js +127 -0
  428. package/dist/chunk-rfpx3se2.js +114 -0
  429. package/dist/chunk-rfzv16n9.js +140 -0
  430. package/dist/chunk-rhq6rjsm.js +139 -0
  431. package/dist/chunk-rn0v1hk8.js +34 -0
  432. package/dist/chunk-rpmxbsc4.js +106 -0
  433. package/dist/chunk-rw0b3wq4.js +54 -0
  434. package/dist/chunk-rwg99z4w.js +277 -0
  435. package/dist/chunk-rzz2be44.js +144 -0
  436. package/dist/chunk-s1pwx4p8.js +1029 -0
  437. package/dist/chunk-s2jznn2t.js +63 -0
  438. package/dist/chunk-s3pzvdss.js +50 -0
  439. package/dist/chunk-s5hrc81b.js +256 -0
  440. package/dist/chunk-s6zh6vsc.js +115 -0
  441. package/dist/chunk-sac40vch.js +41 -0
  442. package/dist/chunk-sd36yzx8.js +954 -0
  443. package/dist/chunk-sd6tyy2k.js +445 -0
  444. package/dist/chunk-sg9s9fhh.js +220 -0
  445. package/dist/chunk-st29kcjw.js +70 -0
  446. package/dist/chunk-szj5wvdy.js +28 -0
  447. package/dist/chunk-tazmxz0r.js +115 -0
  448. package/dist/chunk-tbbgpakn.js +352 -0
  449. package/dist/chunk-tbjjq4ry.js +70 -0
  450. package/dist/chunk-tezak8rx.js +6157 -0
  451. package/dist/chunk-tf79jran.js +15 -0
  452. package/dist/chunk-tg8bdmhy.js +148 -0
  453. package/dist/chunk-thjjw26s.js +369 -0
  454. package/dist/chunk-tq1ak9qz.js +3594 -0
  455. package/dist/chunk-tqvxvgcq.js +390 -0
  456. package/dist/chunk-ts2p6bv1.js +224 -0
  457. package/dist/chunk-tsmzsjkv.js +167 -0
  458. package/dist/chunk-ttk5dzz8.js +25 -0
  459. package/dist/chunk-v1kzp02e.js +785 -0
  460. package/dist/chunk-v4rp12y4.js +269 -0
  461. package/dist/chunk-v4t6dyyh.js +9076 -0
  462. package/dist/chunk-v78fj8by.js +145 -0
  463. package/dist/chunk-v9smspw2.js +4301 -0
  464. package/dist/chunk-var1et7e.js +66 -0
  465. package/dist/chunk-vest0y6x.js +3830 -0
  466. package/dist/chunk-vf5sd1nq.js +12 -0
  467. package/dist/chunk-vf612n57.js +472 -0
  468. package/dist/chunk-vhqtr0f1.js +343 -0
  469. package/dist/chunk-vnfempy5.js +43 -0
  470. package/dist/chunk-vp5pr5yv.js +443 -0
  471. package/dist/chunk-vp8cvspq.js +157 -0
  472. package/dist/chunk-vqqtdc8s.js +75 -0
  473. package/dist/chunk-vyjeh50y.js +2149 -0
  474. package/dist/chunk-w0nwhqww.js +295 -0
  475. package/dist/chunk-w32xjs44.js +306 -0
  476. package/dist/chunk-w4mdb23d.js +111 -0
  477. package/dist/chunk-w5j84xcj.js +226 -0
  478. package/dist/chunk-w78f4cd8.js +158 -0
  479. package/dist/chunk-wbpxzaty.js +66 -0
  480. package/dist/chunk-wfz0qffj.js +3939 -0
  481. package/dist/chunk-wm26jyc3.js +156 -0
  482. package/dist/chunk-wmw9c9ga.js +440 -0
  483. package/dist/chunk-wpp8s8bh.js +433 -0
  484. package/dist/chunk-wrb0tqk3.js +198 -0
  485. package/dist/chunk-wswsvthr.js +946 -0
  486. package/dist/chunk-wzpdet3m.js +843 -0
  487. package/dist/chunk-x1pmes5j.js +482 -0
  488. package/dist/chunk-x6r4v44b.js +8 -0
  489. package/dist/chunk-x92g7cqn.js +421 -0
  490. package/dist/chunk-xedf6d09.js +66 -0
  491. package/dist/chunk-xgwhhpvz.js +154 -0
  492. package/dist/chunk-xkxd7n8n.js +310 -0
  493. package/dist/chunk-xrt6e27s.js +60 -0
  494. package/dist/chunk-xsq9ae7x.js +90 -0
  495. package/dist/chunk-xv3era3s.js +8 -0
  496. package/dist/chunk-xwz1db00.js +34 -0
  497. package/dist/chunk-xx0570gb.js +120 -0
  498. package/dist/chunk-xxshn0tn.js +314 -0
  499. package/dist/chunk-xzc7k2hh.js +122 -0
  500. package/dist/chunk-y1784krc.js +19 -0
  501. package/dist/chunk-y2hdgkmv.js +244 -0
  502. package/dist/chunk-y82j1dne.js +524 -0
  503. package/dist/chunk-ybae225f.js +669 -0
  504. package/dist/chunk-ye7fmmc4.js +95 -0
  505. package/dist/chunk-ygj29dpk.js +100 -0
  506. package/dist/chunk-yj2t6a2t.js +216 -0
  507. package/dist/chunk-yja33bsx.js +300 -0
  508. package/dist/chunk-yjkamwzv.js +121 -0
  509. package/dist/chunk-ymjz2by8.js +120 -0
  510. package/dist/chunk-yqtda7b6.js +105 -0
  511. package/dist/chunk-yqx2fkma.js +2362 -0
  512. package/dist/chunk-yzx3mhfd.js +110 -0
  513. package/dist/chunk-z1bs6d7k.js +24 -0
  514. package/dist/chunk-z2dp53wn.js +17 -0
  515. package/dist/chunk-z6e5jp2w.js +119 -0
  516. package/dist/chunk-z915v06p.js +148 -0
  517. package/dist/chunk-ze6zvkg6.js +22820 -0
  518. package/dist/chunk-zejm280k.js +39 -0
  519. package/dist/chunk-zeytvkxt.js +142 -0
  520. package/dist/chunk-zgjh33vv.js +276 -0
  521. package/dist/chunk-zgncjtyk.js +264 -0
  522. package/dist/chunk-zmgzhwae.js +4389 -0
  523. package/dist/chunk-ztf1hdpb.js +456 -0
  524. package/dist/chunk-zzm33q8x.js +8 -0
  525. package/dist/cli.js +139 -0
  526. package/dist/download-ripgrep.js +24821 -0
  527. package/dist/vendor/audio-capture/arm64-darwin/audio-capture.node +0 -0
  528. package/dist/vendor/audio-capture/arm64-linux/audio-capture.node +0 -0
  529. package/dist/vendor/audio-capture/arm64-win32/audio-capture.node +0 -0
  530. package/dist/vendor/audio-capture/x64-darwin/audio-capture.node +0 -0
  531. package/dist/vendor/audio-capture/x64-linux/audio-capture.node +0 -0
  532. package/dist/vendor/audio-capture/x64-win32/audio-capture.node +0 -0
  533. package/package.json +177 -0
  534. package/scripts/download-ripgrep.ts +335 -0
  535. package/scripts/postinstall.cjs +319 -0
@@ -0,0 +1,1077 @@
1
+ // @bun
2
+ import {
3
+ init_staticRender,
4
+ renderToAnsiString
5
+ } from "./chunk-fzsn5y4x.js";
6
+ import {
7
+ BASH_TOOL_NAME,
8
+ FILE_READ_TOOL_NAME,
9
+ GREP_TOOL_NAME,
10
+ WEB_FETCH_TOOL_NAME,
11
+ analyzeContextUsage,
12
+ getMessagesAfterCompactBoundary,
13
+ init_analyzeContext,
14
+ init_messages1 as init_messages,
15
+ init_microCompact,
16
+ init_prompt,
17
+ init_prompt1 as init_prompt2,
18
+ init_prompt4 as init_prompt3,
19
+ init_toolName,
20
+ microcompactMessages
21
+ } from "./chunk-97kwfkef.js";
22
+ import"./chunk-4nspekjp.js";
23
+ import"./chunk-s2jznn2t.js";
24
+ import"./chunk-zejm280k.js";
25
+ import"./chunk-var1et7e.js";
26
+ import"./chunk-ehtwnxpg.js";
27
+ import"./chunk-enz148g9.js";
28
+ import"./chunk-jmt3t5ka.js";
29
+ import"./chunk-3x2jaxpw.js";
30
+ import"./chunk-wm26jyc3.js";
31
+ import"./chunk-2gzv8nrw.js";
32
+ import"./chunk-bxcfz5gy.js";
33
+ import"./chunk-3vxgde8h.js";
34
+ import"./chunk-9k8qsaph.js";
35
+ import"./chunk-bnrctxq5.js";
36
+ import"./chunk-9663bsk0.js";
37
+ import"./chunk-cgfdkzhb.js";
38
+ import"./chunk-gr2j2pnw.js";
39
+ import"./chunk-m7gb3xym.js";
40
+ import"./chunk-zgjh33vv.js";
41
+ import"./chunk-j5bth84e.js";
42
+ import"./chunk-39jcea92.js";
43
+ import"./chunk-reta5k4w.js";
44
+ import"./chunk-3z9478wf.js";
45
+ import"./chunk-ps49ymvj.js";
46
+ import"./chunk-eq5csq9z.js";
47
+ import"./chunk-qezabsdm.js";
48
+ import"./chunk-p7vkh4wx.js";
49
+ import"./chunk-3sj7jkgr.js";
50
+ import"./chunk-62xkxk9z.js";
51
+ import"./chunk-ers3hn71.js";
52
+ import"./chunk-5krq9sjq.js";
53
+ import"./chunk-85em0j2s.js";
54
+ import"./chunk-dmfnhfbm.js";
55
+ import"./chunk-4jm600zv.js";
56
+ import"./chunk-ew2qn2ct.js";
57
+ import"./chunk-3bes9fg8.js";
58
+ import"./chunk-ygj29dpk.js";
59
+ import"./chunk-6km733xr.js";
60
+ import"./chunk-mx28h61f.js";
61
+ import"./chunk-z915v06p.js";
62
+ import"./chunk-rw0b3wq4.js";
63
+ import"./chunk-ms3y5kf0.js";
64
+ import"./chunk-pfc94kdv.js";
65
+ import"./chunk-kwdta9bw.js";
66
+ import"./chunk-3dy7fxmg.js";
67
+ import {
68
+ getDisplayPath,
69
+ getSourceDisplayName,
70
+ init_constants,
71
+ init_file,
72
+ init_stringUtils
73
+ } from "./chunk-qp1047f9.js";
74
+ import"./chunk-3ns6ys7f.js";
75
+ import"./chunk-6aspnjtj.js";
76
+ import"./chunk-1dz5e26z.js";
77
+ import"./chunk-1cwdhk7a.js";
78
+ import"./chunk-j9gxwbe3.js";
79
+ import"./chunk-64c1avct.js";
80
+ import"./chunk-qbrsmra3.js";
81
+ import"./chunk-8g5pe1gr.js";
82
+ import"./chunk-5j8wked2.js";
83
+ import"./chunk-v4t6dyyh.js";
84
+ import"./chunk-4pbx3g7s.js";
85
+ import"./chunk-26wtxbdc.js";
86
+ import"./chunk-f5ma3nh5.js";
87
+ import"./chunk-qz2x630m.js";
88
+ import"./chunk-xzc7k2hh.js";
89
+ import"./chunk-rcpmj2s6.js";
90
+ import"./chunk-3c25bcsw.js";
91
+ import"./chunk-dkzwgrsa.js";
92
+ import"./chunk-q82r31er.js";
93
+ import"./chunk-p2816w9z.js";
94
+ import"./chunk-v9smspw2.js";
95
+ import"./chunk-v1kzp02e.js";
96
+ import {
97
+ formatTokens,
98
+ init_format
99
+ } from "./chunk-ztf1hdpb.js";
100
+ import"./chunk-crmjpsqe.js";
101
+ import {
102
+ StatusIcon,
103
+ ThemedBox_default,
104
+ ThemedText,
105
+ init_src
106
+ } from "./chunk-fk80f449.js";
107
+ import {
108
+ require_jsx_dev_runtime
109
+ } from "./chunk-g338npwr.js";
110
+ import"./chunk-f2mhrmww.js";
111
+ import"./chunk-0vkfrmqm.js";
112
+ import"./chunk-0xjaqda8.js";
113
+ import"./chunk-yjkamwzv.js";
114
+ import"./chunk-13hhjhs8.js";
115
+ import"./chunk-rpmxbsc4.js";
116
+ import"./chunk-qnfx3qtx.js";
117
+ import"./chunk-2wz9qb4j.js";
118
+ import"./chunk-b81hd3m6.js";
119
+ import"./chunk-ce2v5y9y.js";
120
+ import"./chunk-8tnsngw2.js";
121
+ import"./chunk-56r79b2b.js";
122
+ import"./chunk-nneembm7.js";
123
+ import"./chunk-5z28bqne.js";
124
+ import {
125
+ figures_default,
126
+ init_figures
127
+ } from "./chunk-qajrkk97.js";
128
+ import"./chunk-ctya0ggm.js";
129
+ import"./chunk-fbv4apne.js";
130
+ import"./chunk-z6e5jp2w.js";
131
+ import"./chunk-h4b85amj.js";
132
+ import"./chunk-07069jq1.js";
133
+ import"./chunk-jaaxk89e.js";
134
+ import"./chunk-vf612n57.js";
135
+ import"./chunk-d4mdda98.js";
136
+ import"./chunk-7wm5s02e.js";
137
+ import"./chunk-4g3v8y12.js";
138
+ import"./chunk-7739pg2c.js";
139
+ import"./chunk-nh3cd07f.js";
140
+ import"./chunk-8pn8tvgg.js";
141
+ import"./chunk-netzwgv1.js";
142
+ import {
143
+ __esm,
144
+ __toESM
145
+ } from "./chunk-qp2qdcda.js";
146
+
147
+ // src/utils/contextSuggestions.ts
148
+ function generateContextSuggestions(data) {
149
+ const suggestions = [];
150
+ checkNearCapacity(data, suggestions);
151
+ checkLargeToolResults(data, suggestions);
152
+ checkReadResultBloat(data, suggestions);
153
+ checkMemoryBloat(data, suggestions);
154
+ checkAutoCompactDisabled(data, suggestions);
155
+ suggestions.sort((a, b) => {
156
+ if (a.severity !== b.severity) {
157
+ return a.severity === "warning" ? -1 : 1;
158
+ }
159
+ return (b.savingsTokens ?? 0) - (a.savingsTokens ?? 0);
160
+ });
161
+ return suggestions;
162
+ }
163
+ function checkNearCapacity(data, suggestions) {
164
+ if (data.percentage >= NEAR_CAPACITY_PERCENT) {
165
+ suggestions.push({
166
+ severity: "warning",
167
+ title: `Context is ${data.percentage}% full`,
168
+ detail: data.isAutoCompactEnabled ? "Autocompact will trigger soon, which discards older messages. Use /compact now to control what gets kept." : "Autocompact is disabled. Use /compact to free space, or enable autocompact in /config."
169
+ });
170
+ }
171
+ }
172
+ function checkLargeToolResults(data, suggestions) {
173
+ if (!data.messageBreakdown)
174
+ return;
175
+ for (const tool of data.messageBreakdown.toolCallsByType) {
176
+ const totalToolTokens = tool.callTokens + tool.resultTokens;
177
+ const percent = totalToolTokens / data.rawMaxTokens * 100;
178
+ if (percent < LARGE_TOOL_RESULT_PERCENT || totalToolTokens < LARGE_TOOL_RESULT_TOKENS) {
179
+ continue;
180
+ }
181
+ const suggestion = getLargeToolSuggestion(tool.name, totalToolTokens, percent);
182
+ if (suggestion) {
183
+ suggestions.push(suggestion);
184
+ }
185
+ }
186
+ }
187
+ function getLargeToolSuggestion(toolName, tokens, percent) {
188
+ const tokenStr = formatTokens(tokens);
189
+ switch (toolName) {
190
+ case BASH_TOOL_NAME:
191
+ return {
192
+ severity: "warning",
193
+ title: `Bash results using ${tokenStr} tokens (${percent.toFixed(0)}%)`,
194
+ detail: "Pipe output through head, tail, or grep to reduce result size. Avoid cat on large files \u2014 use Read with offset/limit instead.",
195
+ savingsTokens: Math.floor(tokens * 0.5)
196
+ };
197
+ case FILE_READ_TOOL_NAME:
198
+ return {
199
+ severity: "info",
200
+ title: `Read results using ${tokenStr} tokens (${percent.toFixed(0)}%)`,
201
+ detail: "Use offset and limit parameters to read only the sections you need. Avoid re-reading entire files when you only need a few lines.",
202
+ savingsTokens: Math.floor(tokens * 0.3)
203
+ };
204
+ case GREP_TOOL_NAME:
205
+ return {
206
+ severity: "info",
207
+ title: `Grep results using ${tokenStr} tokens (${percent.toFixed(0)}%)`,
208
+ detail: "Add more specific patterns or use the glob or type parameter to narrow file types. Consider Glob for file discovery instead of Grep.",
209
+ savingsTokens: Math.floor(tokens * 0.3)
210
+ };
211
+ case WEB_FETCH_TOOL_NAME:
212
+ return {
213
+ severity: "info",
214
+ title: `WebFetch results using ${tokenStr} tokens (${percent.toFixed(0)}%)`,
215
+ detail: "Web page content can be very large. Consider extracting only the specific information needed.",
216
+ savingsTokens: Math.floor(tokens * 0.4)
217
+ };
218
+ default:
219
+ if (percent >= 20) {
220
+ return {
221
+ severity: "info",
222
+ title: `${toolName} using ${tokenStr} tokens (${percent.toFixed(0)}%)`,
223
+ detail: `This tool is consuming a significant portion of context.`,
224
+ savingsTokens: Math.floor(tokens * 0.2)
225
+ };
226
+ }
227
+ return null;
228
+ }
229
+ }
230
+ function checkReadResultBloat(data, suggestions) {
231
+ if (!data.messageBreakdown)
232
+ return;
233
+ const callsByType = data.messageBreakdown.toolCallsByType;
234
+ const readTool = callsByType.find((t) => t.name === FILE_READ_TOOL_NAME);
235
+ if (!readTool)
236
+ return;
237
+ const totalReadTokens = readTool.callTokens + readTool.resultTokens;
238
+ const totalReadPercent = totalReadTokens / data.rawMaxTokens * 100;
239
+ const readPercent = readTool.resultTokens / data.rawMaxTokens * 100;
240
+ if (totalReadPercent >= LARGE_TOOL_RESULT_PERCENT && totalReadTokens >= LARGE_TOOL_RESULT_TOKENS) {
241
+ return;
242
+ }
243
+ if (readPercent >= READ_BLOAT_PERCENT && readTool.resultTokens >= LARGE_TOOL_RESULT_TOKENS) {
244
+ suggestions.push({
245
+ severity: "info",
246
+ title: `File reads using ${formatTokens(readTool.resultTokens)} tokens (${readPercent.toFixed(0)}%)`,
247
+ detail: "If you are re-reading files, consider referencing earlier reads. Use offset/limit for large files.",
248
+ savingsTokens: Math.floor(readTool.resultTokens * 0.3)
249
+ });
250
+ }
251
+ }
252
+ function checkMemoryBloat(data, suggestions) {
253
+ const totalMemoryTokens = data.memoryFiles.reduce((sum, f) => sum + f.tokens, 0);
254
+ const memoryPercent = totalMemoryTokens / data.rawMaxTokens * 100;
255
+ if (memoryPercent >= MEMORY_HIGH_PERCENT && totalMemoryTokens >= MEMORY_HIGH_TOKENS) {
256
+ const largestFiles = [...data.memoryFiles].sort((a, b) => b.tokens - a.tokens).slice(0, 3).map((f) => {
257
+ const name = getDisplayPath(f.path);
258
+ return `${name} (${formatTokens(f.tokens)})`;
259
+ }).join(", ");
260
+ suggestions.push({
261
+ severity: "info",
262
+ title: `Memory files using ${formatTokens(totalMemoryTokens)} tokens (${memoryPercent.toFixed(0)}%)`,
263
+ detail: `Largest: ${largestFiles}. Use /memory to review and prune stale entries.`,
264
+ savingsTokens: Math.floor(totalMemoryTokens * 0.3)
265
+ });
266
+ }
267
+ }
268
+ function checkAutoCompactDisabled(data, suggestions) {
269
+ if (!data.isAutoCompactEnabled && data.percentage >= 50 && data.percentage < NEAR_CAPACITY_PERCENT) {
270
+ suggestions.push({
271
+ severity: "info",
272
+ title: "Autocompact is disabled",
273
+ detail: "Without autocompact, you will hit context limits and lose the conversation. Enable it in /config or use /compact manually."
274
+ });
275
+ }
276
+ }
277
+ var LARGE_TOOL_RESULT_PERCENT = 15, LARGE_TOOL_RESULT_TOKENS = 1e4, READ_BLOAT_PERCENT = 5, NEAR_CAPACITY_PERCENT = 80, MEMORY_HIGH_PERCENT = 5, MEMORY_HIGH_TOKENS = 5000;
278
+ var init_contextSuggestions = __esm(() => {
279
+ init_toolName();
280
+ init_prompt2();
281
+ init_prompt();
282
+ init_prompt3();
283
+ init_file();
284
+ init_format();
285
+ });
286
+
287
+ // src/components/ContextSuggestions.tsx
288
+ function ContextSuggestions({ suggestions }) {
289
+ if (suggestions.length === 0)
290
+ return null;
291
+ return /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
292
+ flexDirection: "column",
293
+ marginTop: 1,
294
+ children: [
295
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
296
+ bold: true,
297
+ children: "Suggestions"
298
+ }, undefined, false, undefined, this),
299
+ suggestions.map((suggestion, i) => /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
300
+ flexDirection: "column",
301
+ marginTop: i === 0 ? 0 : 1,
302
+ children: [
303
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
304
+ children: [
305
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(StatusIcon, {
306
+ status: suggestion.severity,
307
+ withSpace: true
308
+ }, undefined, false, undefined, this),
309
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
310
+ bold: true,
311
+ children: suggestion.title
312
+ }, undefined, false, undefined, this),
313
+ suggestion.savingsTokens ? /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
314
+ dimColor: true,
315
+ children: [
316
+ " ",
317
+ figures_default.arrowRight,
318
+ " save ~",
319
+ formatTokens(suggestion.savingsTokens)
320
+ ]
321
+ }, undefined, true, undefined, this) : null
322
+ ]
323
+ }, undefined, true, undefined, this),
324
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
325
+ marginLeft: 2,
326
+ children: /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
327
+ dimColor: true,
328
+ children: suggestion.detail
329
+ }, undefined, false, undefined, this)
330
+ }, undefined, false, undefined, this)
331
+ ]
332
+ }, i, true, undefined, this))
333
+ ]
334
+ }, undefined, true, undefined, this);
335
+ }
336
+ var jsx_dev_runtime;
337
+ var init_ContextSuggestions = __esm(() => {
338
+ init_figures();
339
+ init_src();
340
+ init_format();
341
+ jsx_dev_runtime = __toESM(require_jsx_dev_runtime(), 1);
342
+ });
343
+
344
+ // src/components/ContextVisualization.tsx
345
+ function CollapseStatus() {
346
+ if (false) {}
347
+ return null;
348
+ }
349
+ function groupBySource(items) {
350
+ const groups = new Map;
351
+ for (const item of items) {
352
+ const key = getSourceDisplayName(item.source);
353
+ const existing = groups.get(key) || [];
354
+ existing.push(item);
355
+ groups.set(key, existing);
356
+ }
357
+ for (const [key, group] of groups.entries()) {
358
+ groups.set(key, group.sort((a, b) => b.tokens - a.tokens));
359
+ }
360
+ const orderedGroups = new Map;
361
+ for (const source of SOURCE_DISPLAY_ORDER) {
362
+ const group = groups.get(source);
363
+ if (group) {
364
+ orderedGroups.set(source, group);
365
+ }
366
+ }
367
+ return orderedGroups;
368
+ }
369
+ function ContextVisualization({ data }) {
370
+ const {
371
+ categories,
372
+ totalTokens,
373
+ rawMaxTokens,
374
+ percentage,
375
+ gridRows,
376
+ model,
377
+ memoryFiles,
378
+ mcpTools,
379
+ deferredBuiltinTools = [],
380
+ systemTools,
381
+ systemPromptSections,
382
+ agents,
383
+ skills,
384
+ messageBreakdown
385
+ } = data;
386
+ const visibleCategories = categories.filter((cat) => cat.tokens > 0 && cat.name !== "Free space" && cat.name !== RESERVED_CATEGORY_NAME && !cat.isDeferred);
387
+ const hasDeferredMcpTools = categories.some((cat) => cat.isDeferred && cat.name.includes("MCP"));
388
+ const hasDeferredBuiltinTools = deferredBuiltinTools.length > 0;
389
+ const autocompactCategory = categories.find((cat) => cat.name === RESERVED_CATEGORY_NAME);
390
+ return /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
391
+ flexDirection: "column",
392
+ paddingLeft: 1,
393
+ children: [
394
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
395
+ bold: true,
396
+ children: "Context Usage"
397
+ }, undefined, false, undefined, this),
398
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
399
+ flexDirection: "row",
400
+ gap: 2,
401
+ children: [
402
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
403
+ flexDirection: "column",
404
+ flexShrink: 0,
405
+ children: gridRows.map((row, rowIndex) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
406
+ flexDirection: "row",
407
+ marginLeft: -1,
408
+ children: row.map((square, colIndex) => {
409
+ if (square.categoryName === "Free space") {
410
+ return /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
411
+ dimColor: true,
412
+ children: "\u26F6 "
413
+ }, colIndex, false, undefined, this);
414
+ }
415
+ if (square.categoryName === RESERVED_CATEGORY_NAME) {
416
+ return /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
417
+ color: square.color,
418
+ children: "\u26DD "
419
+ }, colIndex, false, undefined, this);
420
+ }
421
+ return /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
422
+ color: square.color,
423
+ children: square.squareFullness >= 0.7 ? "\u26C1 " : "\u26C0 "
424
+ }, colIndex, false, undefined, this);
425
+ })
426
+ }, rowIndex, false, undefined, this))
427
+ }, undefined, false, undefined, this),
428
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
429
+ flexDirection: "column",
430
+ gap: 0,
431
+ flexShrink: 0,
432
+ children: [
433
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
434
+ dimColor: true,
435
+ children: [
436
+ model,
437
+ " \xB7 ",
438
+ formatTokens(totalTokens),
439
+ "/",
440
+ formatTokens(rawMaxTokens),
441
+ " ",
442
+ "tokens (",
443
+ percentage,
444
+ "%)"
445
+ ]
446
+ }, undefined, true, undefined, this),
447
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(CollapseStatus, {}, undefined, false, undefined, this),
448
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
449
+ children: " "
450
+ }, undefined, false, undefined, this),
451
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
452
+ dimColor: true,
453
+ italic: true,
454
+ children: "Estimated usage by category"
455
+ }, undefined, false, undefined, this),
456
+ visibleCategories.map((cat, index) => {
457
+ const tokenDisplay = formatTokens(cat.tokens);
458
+ const percentDisplay = cat.isDeferred ? "N/A" : `${(cat.tokens / rawMaxTokens * 100).toFixed(1)}%`;
459
+ const isReserved = cat.name === RESERVED_CATEGORY_NAME;
460
+ const displayName = cat.name;
461
+ const symbol = cat.isDeferred ? " " : isReserved ? "\u26DD" : "\u26C1";
462
+ return /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
463
+ children: [
464
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
465
+ color: cat.color,
466
+ children: symbol
467
+ }, undefined, false, undefined, this),
468
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
469
+ children: [
470
+ " ",
471
+ displayName,
472
+ ": "
473
+ ]
474
+ }, undefined, true, undefined, this),
475
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
476
+ dimColor: true,
477
+ children: [
478
+ tokenDisplay,
479
+ " tokens (",
480
+ percentDisplay,
481
+ ")"
482
+ ]
483
+ }, undefined, true, undefined, this)
484
+ ]
485
+ }, index, true, undefined, this);
486
+ }),
487
+ (categories.find((c) => c.name === "Free space")?.tokens ?? 0) > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
488
+ children: [
489
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
490
+ dimColor: true,
491
+ children: "\u26F6"
492
+ }, undefined, false, undefined, this),
493
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
494
+ children: " Free space: "
495
+ }, undefined, false, undefined, this),
496
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
497
+ dimColor: true,
498
+ children: [
499
+ formatTokens(categories.find((c) => c.name === "Free space")?.tokens || 0),
500
+ " ",
501
+ "(",
502
+ ((categories.find((c) => c.name === "Free space")?.tokens || 0) / rawMaxTokens * 100).toFixed(1),
503
+ "%)"
504
+ ]
505
+ }, undefined, true, undefined, this)
506
+ ]
507
+ }, undefined, true, undefined, this),
508
+ autocompactCategory && autocompactCategory.tokens > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
509
+ children: [
510
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
511
+ color: autocompactCategory.color,
512
+ children: "\u26DD"
513
+ }, undefined, false, undefined, this),
514
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
515
+ dimColor: true,
516
+ children: [
517
+ " ",
518
+ autocompactCategory.name,
519
+ ": "
520
+ ]
521
+ }, undefined, true, undefined, this),
522
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
523
+ dimColor: true,
524
+ children: [
525
+ formatTokens(autocompactCategory.tokens),
526
+ " tokens (",
527
+ (autocompactCategory.tokens / rawMaxTokens * 100).toFixed(1),
528
+ "%)"
529
+ ]
530
+ }, undefined, true, undefined, this)
531
+ ]
532
+ }, undefined, true, undefined, this)
533
+ ]
534
+ }, undefined, true, undefined, this)
535
+ ]
536
+ }, undefined, true, undefined, this),
537
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
538
+ flexDirection: "column",
539
+ marginLeft: -1,
540
+ children: [
541
+ mcpTools.length > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
542
+ flexDirection: "column",
543
+ marginTop: 1,
544
+ children: [
545
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
546
+ children: [
547
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
548
+ bold: true,
549
+ children: "MCP tools"
550
+ }, undefined, false, undefined, this),
551
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
552
+ dimColor: true,
553
+ children: [
554
+ " ",
555
+ "\xB7 /mcp",
556
+ hasDeferredMcpTools ? " (loaded on-demand)" : ""
557
+ ]
558
+ }, undefined, true, undefined, this)
559
+ ]
560
+ }, undefined, true, undefined, this),
561
+ mcpTools.some((t) => t.isLoaded) && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
562
+ flexDirection: "column",
563
+ marginTop: 1,
564
+ children: [
565
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
566
+ dimColor: true,
567
+ children: "Loaded"
568
+ }, undefined, false, undefined, this),
569
+ mcpTools.filter((t) => t.isLoaded).map((tool, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
570
+ children: [
571
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
572
+ children: [
573
+ "\u2514 ",
574
+ tool.name,
575
+ ": "
576
+ ]
577
+ }, undefined, true, undefined, this),
578
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
579
+ dimColor: true,
580
+ children: [
581
+ formatTokens(tool.tokens),
582
+ " tokens"
583
+ ]
584
+ }, undefined, true, undefined, this)
585
+ ]
586
+ }, i, true, undefined, this))
587
+ ]
588
+ }, undefined, true, undefined, this),
589
+ hasDeferredMcpTools && mcpTools.some((t) => !t.isLoaded) && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
590
+ flexDirection: "column",
591
+ marginTop: 1,
592
+ children: [
593
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
594
+ dimColor: true,
595
+ children: "Available"
596
+ }, undefined, false, undefined, this),
597
+ mcpTools.filter((t) => !t.isLoaded).map((tool, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
598
+ children: /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
599
+ dimColor: true,
600
+ children: [
601
+ "\u2514 ",
602
+ tool.name
603
+ ]
604
+ }, undefined, true, undefined, this)
605
+ }, i, false, undefined, this))
606
+ ]
607
+ }, undefined, true, undefined, this),
608
+ !hasDeferredMcpTools && mcpTools.map((tool, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
609
+ children: [
610
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
611
+ children: [
612
+ "\u2514 ",
613
+ tool.name,
614
+ ": "
615
+ ]
616
+ }, undefined, true, undefined, this),
617
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
618
+ dimColor: true,
619
+ children: [
620
+ formatTokens(tool.tokens),
621
+ " tokens"
622
+ ]
623
+ }, undefined, true, undefined, this)
624
+ ]
625
+ }, i, true, undefined, this))
626
+ ]
627
+ }, undefined, true, undefined, this),
628
+ (systemTools && systemTools.length > 0 || hasDeferredBuiltinTools) && process.env.USER_TYPE === "ant" && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
629
+ flexDirection: "column",
630
+ marginTop: 1,
631
+ children: [
632
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
633
+ children: [
634
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
635
+ bold: true,
636
+ children: "[ANT-ONLY] System tools"
637
+ }, undefined, false, undefined, this),
638
+ hasDeferredBuiltinTools && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
639
+ dimColor: true,
640
+ children: " (some loaded on-demand)"
641
+ }, undefined, false, undefined, this)
642
+ ]
643
+ }, undefined, true, undefined, this),
644
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
645
+ flexDirection: "column",
646
+ marginTop: 1,
647
+ children: [
648
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
649
+ dimColor: true,
650
+ children: "Loaded"
651
+ }, undefined, false, undefined, this),
652
+ systemTools?.map((tool, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
653
+ children: [
654
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
655
+ children: [
656
+ "\u2514 ",
657
+ tool.name,
658
+ ": "
659
+ ]
660
+ }, undefined, true, undefined, this),
661
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
662
+ dimColor: true,
663
+ children: [
664
+ formatTokens(tool.tokens),
665
+ " tokens"
666
+ ]
667
+ }, undefined, true, undefined, this)
668
+ ]
669
+ }, `sys-${i}`, true, undefined, this)),
670
+ deferredBuiltinTools.filter((t) => t.isLoaded).map((tool, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
671
+ children: [
672
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
673
+ children: [
674
+ "\u2514 ",
675
+ tool.name,
676
+ ": "
677
+ ]
678
+ }, undefined, true, undefined, this),
679
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
680
+ dimColor: true,
681
+ children: [
682
+ formatTokens(tool.tokens),
683
+ " tokens"
684
+ ]
685
+ }, undefined, true, undefined, this)
686
+ ]
687
+ }, `def-${i}`, true, undefined, this))
688
+ ]
689
+ }, undefined, true, undefined, this),
690
+ hasDeferredBuiltinTools && deferredBuiltinTools.some((t) => !t.isLoaded) && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
691
+ flexDirection: "column",
692
+ marginTop: 1,
693
+ children: [
694
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
695
+ dimColor: true,
696
+ children: "Available"
697
+ }, undefined, false, undefined, this),
698
+ deferredBuiltinTools.filter((t) => !t.isLoaded).map((tool, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
699
+ children: /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
700
+ dimColor: true,
701
+ children: [
702
+ "\u2514 ",
703
+ tool.name
704
+ ]
705
+ }, undefined, true, undefined, this)
706
+ }, i, false, undefined, this))
707
+ ]
708
+ }, undefined, true, undefined, this)
709
+ ]
710
+ }, undefined, true, undefined, this),
711
+ systemPromptSections && systemPromptSections.length > 0 && process.env.USER_TYPE === "ant" && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
712
+ flexDirection: "column",
713
+ marginTop: 1,
714
+ children: [
715
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
716
+ bold: true,
717
+ children: "[ANT-ONLY] System prompt sections"
718
+ }, undefined, false, undefined, this),
719
+ systemPromptSections.map((section, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
720
+ children: [
721
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
722
+ children: [
723
+ "\u2514 ",
724
+ section.name,
725
+ ": "
726
+ ]
727
+ }, undefined, true, undefined, this),
728
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
729
+ dimColor: true,
730
+ children: [
731
+ formatTokens(section.tokens),
732
+ " tokens"
733
+ ]
734
+ }, undefined, true, undefined, this)
735
+ ]
736
+ }, i, true, undefined, this))
737
+ ]
738
+ }, undefined, true, undefined, this),
739
+ agents.length > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
740
+ flexDirection: "column",
741
+ marginTop: 1,
742
+ children: [
743
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
744
+ children: [
745
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
746
+ bold: true,
747
+ children: "Custom agents"
748
+ }, undefined, false, undefined, this),
749
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
750
+ dimColor: true,
751
+ children: " \xB7 /agents"
752
+ }, undefined, false, undefined, this)
753
+ ]
754
+ }, undefined, true, undefined, this),
755
+ Array.from(groupBySource(agents).entries()).map(([sourceDisplay, sourceAgents]) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
756
+ flexDirection: "column",
757
+ marginTop: 1,
758
+ children: [
759
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
760
+ dimColor: true,
761
+ children: sourceDisplay
762
+ }, undefined, false, undefined, this),
763
+ sourceAgents.map((agent, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
764
+ children: [
765
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
766
+ children: [
767
+ "\u2514 ",
768
+ agent.agentType,
769
+ ": "
770
+ ]
771
+ }, undefined, true, undefined, this),
772
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
773
+ dimColor: true,
774
+ children: [
775
+ formatTokens(agent.tokens),
776
+ " tokens"
777
+ ]
778
+ }, undefined, true, undefined, this)
779
+ ]
780
+ }, i, true, undefined, this))
781
+ ]
782
+ }, sourceDisplay, true, undefined, this))
783
+ ]
784
+ }, undefined, true, undefined, this),
785
+ memoryFiles.length > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
786
+ flexDirection: "column",
787
+ marginTop: 1,
788
+ children: [
789
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
790
+ children: [
791
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
792
+ bold: true,
793
+ children: "Memory files"
794
+ }, undefined, false, undefined, this),
795
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
796
+ dimColor: true,
797
+ children: " \xB7 /memory"
798
+ }, undefined, false, undefined, this)
799
+ ]
800
+ }, undefined, true, undefined, this),
801
+ memoryFiles.map((file, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
802
+ children: [
803
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
804
+ children: [
805
+ "\u2514 ",
806
+ getDisplayPath(file.path),
807
+ ": "
808
+ ]
809
+ }, undefined, true, undefined, this),
810
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
811
+ dimColor: true,
812
+ children: [
813
+ formatTokens(file.tokens),
814
+ " tokens"
815
+ ]
816
+ }, undefined, true, undefined, this)
817
+ ]
818
+ }, i, true, undefined, this))
819
+ ]
820
+ }, undefined, true, undefined, this),
821
+ skills && skills.tokens > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
822
+ flexDirection: "column",
823
+ marginTop: 1,
824
+ children: [
825
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
826
+ children: [
827
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
828
+ bold: true,
829
+ children: "Skills"
830
+ }, undefined, false, undefined, this),
831
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
832
+ dimColor: true,
833
+ children: " \xB7 /skills"
834
+ }, undefined, false, undefined, this)
835
+ ]
836
+ }, undefined, true, undefined, this),
837
+ Array.from(groupBySource(skills.skillFrontmatter).entries()).map(([sourceDisplay, sourceSkills]) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
838
+ flexDirection: "column",
839
+ marginTop: 1,
840
+ children: [
841
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
842
+ dimColor: true,
843
+ children: sourceDisplay
844
+ }, undefined, false, undefined, this),
845
+ sourceSkills.map((skill, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
846
+ children: [
847
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
848
+ children: [
849
+ "\u2514 ",
850
+ skill.name,
851
+ ": "
852
+ ]
853
+ }, undefined, true, undefined, this),
854
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
855
+ dimColor: true,
856
+ children: [
857
+ formatTokens(skill.tokens),
858
+ " tokens"
859
+ ]
860
+ }, undefined, true, undefined, this)
861
+ ]
862
+ }, i, true, undefined, this))
863
+ ]
864
+ }, sourceDisplay, true, undefined, this))
865
+ ]
866
+ }, undefined, true, undefined, this),
867
+ messageBreakdown && process.env.USER_TYPE === "ant" && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
868
+ flexDirection: "column",
869
+ marginTop: 1,
870
+ children: [
871
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
872
+ bold: true,
873
+ children: "[ANT-ONLY] Message breakdown"
874
+ }, undefined, false, undefined, this),
875
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
876
+ flexDirection: "column",
877
+ marginLeft: 1,
878
+ children: [
879
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
880
+ children: [
881
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
882
+ children: "Tool calls: "
883
+ }, undefined, false, undefined, this),
884
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
885
+ dimColor: true,
886
+ children: [
887
+ formatTokens(messageBreakdown.toolCallTokens),
888
+ " tokens"
889
+ ]
890
+ }, undefined, true, undefined, this)
891
+ ]
892
+ }, undefined, true, undefined, this),
893
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
894
+ children: [
895
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
896
+ children: "Tool results: "
897
+ }, undefined, false, undefined, this),
898
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
899
+ dimColor: true,
900
+ children: [
901
+ formatTokens(messageBreakdown.toolResultTokens),
902
+ " tokens"
903
+ ]
904
+ }, undefined, true, undefined, this)
905
+ ]
906
+ }, undefined, true, undefined, this),
907
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
908
+ children: [
909
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
910
+ children: "Attachments: "
911
+ }, undefined, false, undefined, this),
912
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
913
+ dimColor: true,
914
+ children: [
915
+ formatTokens(messageBreakdown.attachmentTokens),
916
+ " tokens"
917
+ ]
918
+ }, undefined, true, undefined, this)
919
+ ]
920
+ }, undefined, true, undefined, this),
921
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
922
+ children: [
923
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
924
+ children: "Assistant messages (non-tool): "
925
+ }, undefined, false, undefined, this),
926
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
927
+ dimColor: true,
928
+ children: [
929
+ formatTokens(messageBreakdown.assistantMessageTokens),
930
+ " tokens"
931
+ ]
932
+ }, undefined, true, undefined, this)
933
+ ]
934
+ }, undefined, true, undefined, this),
935
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
936
+ children: [
937
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
938
+ children: "User messages (non-tool-result): "
939
+ }, undefined, false, undefined, this),
940
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
941
+ dimColor: true,
942
+ children: [
943
+ formatTokens(messageBreakdown.userMessageTokens),
944
+ " tokens"
945
+ ]
946
+ }, undefined, true, undefined, this)
947
+ ]
948
+ }, undefined, true, undefined, this)
949
+ ]
950
+ }, undefined, true, undefined, this),
951
+ messageBreakdown.toolCallsByType.length > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
952
+ flexDirection: "column",
953
+ marginTop: 1,
954
+ children: [
955
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
956
+ bold: true,
957
+ children: "[ANT-ONLY] Top tools"
958
+ }, undefined, false, undefined, this),
959
+ messageBreakdown.toolCallsByType.slice(0, 5).map((tool, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
960
+ marginLeft: 1,
961
+ children: [
962
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
963
+ children: [
964
+ "\u2514 ",
965
+ tool.name,
966
+ ": "
967
+ ]
968
+ }, undefined, true, undefined, this),
969
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
970
+ dimColor: true,
971
+ children: [
972
+ "calls ",
973
+ formatTokens(tool.callTokens),
974
+ ", results",
975
+ " ",
976
+ formatTokens(tool.resultTokens)
977
+ ]
978
+ }, undefined, true, undefined, this)
979
+ ]
980
+ }, i, true, undefined, this))
981
+ ]
982
+ }, undefined, true, undefined, this),
983
+ messageBreakdown.attachmentsByType.length > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
984
+ flexDirection: "column",
985
+ marginTop: 1,
986
+ children: [
987
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
988
+ bold: true,
989
+ children: "[ANT-ONLY] Top attachments"
990
+ }, undefined, false, undefined, this),
991
+ messageBreakdown.attachmentsByType.slice(0, 5).map((attachment, i) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
992
+ marginLeft: 1,
993
+ children: [
994
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
995
+ children: [
996
+ "\u2514 ",
997
+ attachment.name,
998
+ ": "
999
+ ]
1000
+ }, undefined, true, undefined, this),
1001
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
1002
+ dimColor: true,
1003
+ children: [
1004
+ formatTokens(attachment.tokens),
1005
+ " tokens"
1006
+ ]
1007
+ }, undefined, true, undefined, this)
1008
+ ]
1009
+ }, i, true, undefined, this))
1010
+ ]
1011
+ }, undefined, true, undefined, this)
1012
+ ]
1013
+ }, undefined, true, undefined, this)
1014
+ ]
1015
+ }, undefined, true, undefined, this),
1016
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ContextSuggestions, {
1017
+ suggestions: generateContextSuggestions(data)
1018
+ }, undefined, false, undefined, this)
1019
+ ]
1020
+ }, undefined, true, undefined, this);
1021
+ }
1022
+ var jsx_dev_runtime2, RESERVED_CATEGORY_NAME = "Autocompact buffer", SOURCE_DISPLAY_ORDER;
1023
+ var init_ContextVisualization = __esm(() => {
1024
+ init_src();
1025
+ init_contextSuggestions();
1026
+ init_file();
1027
+ init_format();
1028
+ init_constants();
1029
+ init_stringUtils();
1030
+ init_ContextSuggestions();
1031
+ jsx_dev_runtime2 = __toESM(require_jsx_dev_runtime(), 1);
1032
+ SOURCE_DISPLAY_ORDER = [
1033
+ "Project",
1034
+ "User",
1035
+ "Managed",
1036
+ "Plugin",
1037
+ "Built-in"
1038
+ ];
1039
+ });
1040
+
1041
+ // src/commands/context/context.tsx
1042
+ function toApiView(messages) {
1043
+ let view = getMessagesAfterCompactBoundary(messages);
1044
+ if (false) {}
1045
+ return view;
1046
+ }
1047
+ async function call(onDone, context) {
1048
+ const {
1049
+ messages,
1050
+ getAppState,
1051
+ options: { mainLoopModel, tools }
1052
+ } = context;
1053
+ const apiView = toApiView(messages);
1054
+ const { messages: compactedMessages } = await microcompactMessages(apiView);
1055
+ const terminalWidth = process.stdout.columns || 80;
1056
+ const appState = getAppState();
1057
+ const data = await analyzeContextUsage(compactedMessages, mainLoopModel, async () => appState.toolPermissionContext, tools, appState.agentDefinitions, terminalWidth, context, undefined, apiView);
1058
+ const output = await renderToAnsiString(/* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ContextVisualization, {
1059
+ data
1060
+ }, undefined, false, undefined, this));
1061
+ onDone(output);
1062
+ return null;
1063
+ }
1064
+ var jsx_dev_runtime3;
1065
+ var init_context = __esm(() => {
1066
+ init_ContextVisualization();
1067
+ init_microCompact();
1068
+ init_analyzeContext();
1069
+ init_messages();
1070
+ init_staticRender();
1071
+ jsx_dev_runtime3 = __toESM(require_jsx_dev_runtime(), 1);
1072
+ });
1073
+ init_context();
1074
+
1075
+ export {
1076
+ call
1077
+ };