gong-code 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (374) hide show
  1. package/README.md +38 -0
  2. package/dist/SKILL-22jccbka.md +1 -0
  3. package/dist/chunk-01wdn84e.js +8 -0
  4. package/dist/chunk-04bc74vz.js +243 -0
  5. package/dist/chunk-05t2vqsb.js +490 -0
  6. package/dist/chunk-0727wret.js +159 -0
  7. package/dist/chunk-07rervty.js +200 -0
  8. package/dist/chunk-0b9nxvyg.js +478 -0
  9. package/dist/chunk-0e428b73.js +600 -0
  10. package/dist/chunk-0hqfheht.js +3439 -0
  11. package/dist/chunk-0pnk52c2.js +116 -0
  12. package/dist/chunk-0sbddf6m.js +68 -0
  13. package/dist/chunk-0vf7xb84.js +176 -0
  14. package/dist/chunk-0yz17yjy.js +1061 -0
  15. package/dist/chunk-0zscb6c7.js +10 -0
  16. package/dist/chunk-10p21kq6.js +378 -0
  17. package/dist/chunk-17k78pmz.js +120 -0
  18. package/dist/chunk-19jvvqzp.js +1390 -0
  19. package/dist/chunk-1d5czqnr.js +173 -0
  20. package/dist/chunk-1gjysfnf.js +13876 -0
  21. package/dist/chunk-1jjfv0wd.js +467 -0
  22. package/dist/chunk-1jjzp2pa.js +617 -0
  23. package/dist/chunk-1m38dj2k.js +155 -0
  24. package/dist/chunk-1pgttway.js +211 -0
  25. package/dist/chunk-1vvnx0gb.js +8035 -0
  26. package/dist/chunk-1ztm9yps.js +49145 -0
  27. package/dist/chunk-208x1t0m.js +88 -0
  28. package/dist/chunk-20xqs3yk.js +843 -0
  29. package/dist/chunk-2b2c0wnn.js +584 -0
  30. package/dist/chunk-2g07117j.js +541 -0
  31. package/dist/chunk-2g6p2t3w.js +780 -0
  32. package/dist/chunk-2kjeaeg7.js +28 -0
  33. package/dist/chunk-2n0s2dhc.js +12 -0
  34. package/dist/chunk-2p0hvt8k.js +785 -0
  35. package/dist/chunk-2qmxg9y7.js +40174 -0
  36. package/dist/chunk-2qpy8kne.js +28 -0
  37. package/dist/chunk-2rgbf62a.js +40 -0
  38. package/dist/chunk-2tx0s41y.js +150 -0
  39. package/dist/chunk-2x8zk5cz.js +101 -0
  40. package/dist/chunk-2yqy25z4.js +48 -0
  41. package/dist/chunk-318g78ty.js +552 -0
  42. package/dist/chunk-31gfg8tz.js +290 -0
  43. package/dist/chunk-32n0s532.js +1317 -0
  44. package/dist/chunk-35dw2r9g.js +137 -0
  45. package/dist/chunk-36b5zqvn.js +1865 -0
  46. package/dist/chunk-38kpx69j.js +97 -0
  47. package/dist/chunk-3b01vp8p.js +815 -0
  48. package/dist/chunk-3f76a1ek.js +317 -0
  49. package/dist/chunk-3fd1hkhh.js +4254 -0
  50. package/dist/chunk-3ffxa7zj.js +8 -0
  51. package/dist/chunk-3gcj7w95.js +8 -0
  52. package/dist/chunk-3jf3k40v.js +970 -0
  53. package/dist/chunk-3k51qfp9.js +9301 -0
  54. package/dist/chunk-3mhygd2v.js +1180 -0
  55. package/dist/chunk-3p6y0gvb.js +117 -0
  56. package/dist/chunk-3r60xdt5.js +93 -0
  57. package/dist/chunk-43agf6xv.js +8 -0
  58. package/dist/chunk-46zr418r.js +15 -0
  59. package/dist/chunk-48k2bs4w.js +118 -0
  60. package/dist/chunk-4p987a4z.js +84 -0
  61. package/dist/chunk-4px25pe0.js +776 -0
  62. package/dist/chunk-4s93jyky.js +113 -0
  63. package/dist/chunk-4xv8bedf.js +58 -0
  64. package/dist/chunk-4y382mzd.js +346 -0
  65. package/dist/chunk-52dzw4bc.js +246 -0
  66. package/dist/chunk-52qqmh5g.js +110 -0
  67. package/dist/chunk-53grnhp7.js +8 -0
  68. package/dist/chunk-59craaxx.js +4249 -0
  69. package/dist/chunk-5b833jqs.js +96 -0
  70. package/dist/chunk-5cp2q9sh.js +58 -0
  71. package/dist/chunk-5dbaxmts.js +87 -0
  72. package/dist/chunk-5f5sxgp0.js +96 -0
  73. package/dist/chunk-5mkfderj.js +195 -0
  74. package/dist/chunk-5qw0mpvq.js +389 -0
  75. package/dist/chunk-5rxmszm8.js +48 -0
  76. package/dist/chunk-5ygxa3hr.js +65 -0
  77. package/dist/chunk-61d5dqq2.js +71 -0
  78. package/dist/chunk-6350958y.js +272 -0
  79. package/dist/chunk-65z8hg8j.js +1337 -0
  80. package/dist/chunk-6aq85gdq.js +8 -0
  81. package/dist/chunk-6cjh9exg.js +40751 -0
  82. package/dist/chunk-6e41p5m6.js +187 -0
  83. package/dist/chunk-6jb6xcnq.js +10511 -0
  84. package/dist/chunk-6jta29r1.js +20 -0
  85. package/dist/chunk-6q7f2rrv.js +4757 -0
  86. package/dist/chunk-6sg0ec6v.js +41 -0
  87. package/dist/chunk-6v0rhx4e.js +328 -0
  88. package/dist/chunk-6x5mz95v.js +751 -0
  89. package/dist/chunk-6xqp51qr.js +87 -0
  90. package/dist/chunk-6xvyx1s9.js +6957 -0
  91. package/dist/chunk-6ywh7wgp.js +468 -0
  92. package/dist/chunk-75ne77gm.js +1920 -0
  93. package/dist/chunk-77cb06js.js +602 -0
  94. package/dist/chunk-78n9kfp8.js +1645 -0
  95. package/dist/chunk-7be87rww.js +277 -0
  96. package/dist/chunk-7e1qjk3s.js +125 -0
  97. package/dist/chunk-7e7nxnss.js +360 -0
  98. package/dist/chunk-7g8156qp.js +55 -0
  99. package/dist/chunk-7nz71s42.js +3353 -0
  100. package/dist/chunk-7r078t2x.js +113 -0
  101. package/dist/chunk-7shx41hj.js +3094 -0
  102. package/dist/chunk-7yexhdjs.js +216 -0
  103. package/dist/chunk-83kmfcjv.js +256 -0
  104. package/dist/chunk-846rr9n1.js +107 -0
  105. package/dist/chunk-84ncsm1r.js +183 -0
  106. package/dist/chunk-867x8aq0.js +8936 -0
  107. package/dist/chunk-8byh30kb.js +1947 -0
  108. package/dist/chunk-8c8f6gnt.js +432 -0
  109. package/dist/chunk-8gtdseev.js +454 -0
  110. package/dist/chunk-8jfh9rq6.js +642 -0
  111. package/dist/chunk-8n4n4m67.js +800 -0
  112. package/dist/chunk-8za61tze.js +847 -0
  113. package/dist/chunk-9029sbq1.js +57 -0
  114. package/dist/chunk-94dm5rrm.js +673 -0
  115. package/dist/chunk-9bs8n985.js +329 -0
  116. package/dist/chunk-9c23776j.js +763 -0
  117. package/dist/chunk-9e93g81n.js +298 -0
  118. package/dist/chunk-9f3d61y7.js +548 -0
  119. package/dist/chunk-9gc3andd.js +422 -0
  120. package/dist/chunk-9kn3tgpb.js +130 -0
  121. package/dist/chunk-9m5rn7hk.js +61 -0
  122. package/dist/chunk-9p4hsd6a.js +50 -0
  123. package/dist/chunk-9qasfk8n.js +758 -0
  124. package/dist/chunk-9snp5mn2.js +533 -0
  125. package/dist/chunk-9tcvras3.js +2331 -0
  126. package/dist/chunk-a0186ngk.js +57 -0
  127. package/dist/chunk-a2m8f0aj.js +268 -0
  128. package/dist/chunk-a2rcafav.js +716 -0
  129. package/dist/chunk-a9hjdzar.js +160 -0
  130. package/dist/chunk-aak6ts5n.js +526 -0
  131. package/dist/chunk-aca3w84n.js +267 -0
  132. package/dist/chunk-ae76ded0.js +30 -0
  133. package/dist/chunk-afnjhn3j.js +21933 -0
  134. package/dist/chunk-ahj70tf0.js +880 -0
  135. package/dist/chunk-apjsxssq.js +169 -0
  136. package/dist/chunk-av49wjj1.js +43 -0
  137. package/dist/chunk-axggebfy.js +206 -0
  138. package/dist/chunk-az7jpbv8.js +16 -0
  139. package/dist/chunk-azz7sep6.js +328 -0
  140. package/dist/chunk-b4tpz2g1.js +93 -0
  141. package/dist/chunk-bczf2eyq.js +115 -0
  142. package/dist/chunk-bd95f637.js +208 -0
  143. package/dist/chunk-bdhdmkya.js +10 -0
  144. package/dist/chunk-bp0ynk17.js +32 -0
  145. package/dist/chunk-bq75gxjs.js +90 -0
  146. package/dist/chunk-btk5jaq6.js +10464 -0
  147. package/dist/chunk-bv4c48a5.js +120 -0
  148. package/dist/chunk-byfb105n.js +341 -0
  149. package/dist/chunk-c0bdmy7w.js +4223 -0
  150. package/dist/chunk-c20aqkz8.js +641 -0
  151. package/dist/chunk-c4jg3s2c.js +163 -0
  152. package/dist/chunk-c61q5cer.js +258 -0
  153. package/dist/chunk-c9f761sy.js +386 -0
  154. package/dist/chunk-ca6jkz06.js +157 -0
  155. package/dist/chunk-ccyg9ap9.js +171374 -0
  156. package/dist/chunk-cfej8cc7.js +371 -0
  157. package/dist/chunk-cjqxdnf9.js +23 -0
  158. package/dist/chunk-ckrs789w.js +8 -0
  159. package/dist/chunk-cqeq13wg.js +48 -0
  160. package/dist/chunk-crfj3w5e.js +22821 -0
  161. package/dist/chunk-ct5x6z7g.js +8066 -0
  162. package/dist/chunk-cv5h8n8c.js +101 -0
  163. package/dist/chunk-cwe8h159.js +1563 -0
  164. package/dist/chunk-cwm234zz.js +908 -0
  165. package/dist/chunk-d1jkfp45.js +1580 -0
  166. package/dist/chunk-d3hb1qdr.js +126 -0
  167. package/dist/chunk-d70d0zer.js +713 -0
  168. package/dist/chunk-d91tx29f.js +105 -0
  169. package/dist/chunk-d952pymh.js +20 -0
  170. package/dist/chunk-d9af3z8k.js +720 -0
  171. package/dist/chunk-da1n53c2.js +47 -0
  172. package/dist/chunk-df5c1x8m.js +732 -0
  173. package/dist/chunk-dkv64xys.js +71 -0
  174. package/dist/chunk-dm7166v6.js +251 -0
  175. package/dist/chunk-dr0y5a61.js +258 -0
  176. package/dist/chunk-drzb0rrd.js +306 -0
  177. package/dist/chunk-dw1v1q7w.js +37 -0
  178. package/dist/chunk-e224qet4.js +348 -0
  179. package/dist/chunk-e50ckbv0.js +1099 -0
  180. package/dist/chunk-e5gn6by6.js +1165 -0
  181. package/dist/chunk-e7m3f74m.js +37 -0
  182. package/dist/chunk-e8ghgwaj.js +295 -0
  183. package/dist/chunk-ed8k4ya2.js +41 -0
  184. package/dist/chunk-eh0vnqdz.js +76 -0
  185. package/dist/chunk-epwrzr35.js +4301 -0
  186. package/dist/chunk-er9h6sw5.js +5379 -0
  187. package/dist/chunk-eta5aekm.js +79 -0
  188. package/dist/chunk-ev5gxscq.js +63 -0
  189. package/dist/chunk-evp72hv5.js +212 -0
  190. package/dist/chunk-ex41stfq.js +127 -0
  191. package/dist/chunk-ezpa510h.js +62 -0
  192. package/dist/chunk-f0fm6dey.js +477 -0
  193. package/dist/chunk-f239sbhc.js +152 -0
  194. package/dist/chunk-f2bj47xf.js +109 -0
  195. package/dist/chunk-f4t24rq4.js +258 -0
  196. package/dist/chunk-f9ghvzy8.js +106 -0
  197. package/dist/chunk-f9rahzgr.js +99 -0
  198. package/dist/chunk-ff75qzty.js +521 -0
  199. package/dist/chunk-fj0ctt6q.js +264 -0
  200. package/dist/chunk-fj7wxdt3.js +221 -0
  201. package/dist/chunk-fnnpqv92.js +714 -0
  202. package/dist/chunk-fpd3zzx1.js +26696 -0
  203. package/dist/chunk-fqv2cn76.js +227 -0
  204. package/dist/chunk-fqw9j3bj.js +439 -0
  205. package/dist/chunk-frbcqhz0.js +4984 -0
  206. package/dist/chunk-fzkj59sg.js +174 -0
  207. package/dist/chunk-fzpzbpbw.js +248 -0
  208. package/dist/chunk-g52cpmd1.js +686 -0
  209. package/dist/chunk-g98m2qe6.js +31 -0
  210. package/dist/chunk-g9zgq4vy.js +715 -0
  211. package/dist/chunk-gbpt7tm8.js +687 -0
  212. package/dist/chunk-gg52jka8.js +373 -0
  213. package/dist/chunk-gjttphax.js +5793 -0
  214. package/dist/chunk-gs7vjaas.js +65 -0
  215. package/dist/chunk-gv8n85j2.js +8 -0
  216. package/dist/chunk-gxdwm6pt.js +650 -0
  217. package/dist/chunk-gy8wajg2.js +1014 -0
  218. package/dist/chunk-gz3647m0.js +200 -0
  219. package/dist/chunk-gzg07mqh.js +16 -0
  220. package/dist/chunk-h3zc60tq.js +44 -0
  221. package/dist/chunk-h4p1qt16.js +74 -0
  222. package/dist/chunk-h8219f18.js +282 -0
  223. package/dist/chunk-h9agq92v.js +331 -0
  224. package/dist/chunk-hhjtpwbj.js +16 -0
  225. package/dist/chunk-hpgpwzra.js +548 -0
  226. package/dist/chunk-hsnjvn19.js +80 -0
  227. package/dist/chunk-hsp9qrry.js +417 -0
  228. package/dist/chunk-hwz6aq2m.js +3939 -0
  229. package/dist/chunk-hzph0hbh.js +272 -0
  230. package/dist/chunk-hzqkss6v.js +153 -0
  231. package/dist/chunk-j0t31f39.js +1149 -0
  232. package/dist/chunk-j1qm6n1v.js +30 -0
  233. package/dist/chunk-j6e4b522.js +81 -0
  234. package/dist/chunk-j7qfbvxk.js +84 -0
  235. package/dist/chunk-j7qv3hvm.js +1635 -0
  236. package/dist/chunk-j8mxc6k6.js +213 -0
  237. package/dist/chunk-jevj87jn.js +224 -0
  238. package/dist/chunk-jk2ps88q.js +815 -0
  239. package/dist/chunk-jz7tbdyv.js +1599 -0
  240. package/dist/chunk-k36jpjvh.js +300 -0
  241. package/dist/chunk-k4nmrt3w.js +61 -0
  242. package/dist/chunk-kavn03r9.js +16606 -0
  243. package/dist/chunk-kkgav8dm.js +54 -0
  244. package/dist/chunk-kkq26g5c.js +33 -0
  245. package/dist/chunk-kp6nepx4.js +106 -0
  246. package/dist/chunk-ksefybc8.js +1551 -0
  247. package/dist/chunk-kv147680.js +3436 -0
  248. package/dist/chunk-kya46axt.js +833 -0
  249. package/dist/chunk-kyz233ny.js +227 -0
  250. package/dist/chunk-kzs75xmj.js +143 -0
  251. package/dist/chunk-m0vrez9w.js +266 -0
  252. package/dist/chunk-m1wadav3.js +118 -0
  253. package/dist/chunk-m4rfx3cj.js +221 -0
  254. package/dist/chunk-mc9zaggs.js +6374 -0
  255. package/dist/chunk-mcg5ttj4.js +105 -0
  256. package/dist/chunk-mf4r7918.js +63 -0
  257. package/dist/chunk-mh9khrt4.js +286 -0
  258. package/dist/chunk-mhc4szw7.js +22 -0
  259. package/dist/chunk-mkq0yzp0.js +38 -0
  260. package/dist/chunk-mr58jv4w.js +256 -0
  261. package/dist/chunk-mrrx3bmt.js +168 -0
  262. package/dist/chunk-mtyk3zz6.js +87 -0
  263. package/dist/chunk-mvgxntv6.js +62 -0
  264. package/dist/chunk-mwnjydcm.js +102 -0
  265. package/dist/chunk-mwxt0m3f.js +862 -0
  266. package/dist/chunk-mz1pxck8.js +998 -0
  267. package/dist/chunk-n3agghys.js +214 -0
  268. package/dist/chunk-n6q02ya9.js +442 -0
  269. package/dist/chunk-nt3y91vh.js +443 -0
  270. package/dist/chunk-nt837qt9.js +21 -0
  271. package/dist/chunk-ntgmegfs.js +39 -0
  272. package/dist/chunk-nwk16bbd.js +30 -0
  273. package/dist/chunk-p367ay90.js +672 -0
  274. package/dist/chunk-p7m3x9qk.js +48 -0
  275. package/dist/chunk-pagmjwp5.js +132 -0
  276. package/dist/chunk-pbd4r8ek.js +161 -0
  277. package/dist/chunk-pdkpssgv.js +2422 -0
  278. package/dist/chunk-pf6z1e35.js +32 -0
  279. package/dist/chunk-pfzejvpt.js +213 -0
  280. package/dist/chunk-pktxyhvk.js +400 -0
  281. package/dist/chunk-pp5xhveq.js +124 -0
  282. package/dist/chunk-ppnd7a8x.js +38 -0
  283. package/dist/chunk-pqh2w7dr.js +2202 -0
  284. package/dist/chunk-pr878d0z.js +240 -0
  285. package/dist/chunk-psf0y7hy.js +140 -0
  286. package/dist/chunk-pz2zz2f7.js +1586 -0
  287. package/dist/chunk-q0xkrxy8.js +890 -0
  288. package/dist/chunk-q5b0kpr3.js +14369 -0
  289. package/dist/chunk-q7z3t531.js +334 -0
  290. package/dist/chunk-qdjjtgwt.js +3183 -0
  291. package/dist/chunk-qezv7msv.js +26 -0
  292. package/dist/chunk-qmxn7f86.js +2643 -0
  293. package/dist/chunk-qqc3b97c.js +15 -0
  294. package/dist/chunk-qwrp63wh.js +145 -0
  295. package/dist/chunk-qyvqbst3.js +537 -0
  296. package/dist/chunk-qztvd4hd.js +465 -0
  297. package/dist/chunk-r0bvez4y.js +235 -0
  298. package/dist/chunk-r3z0896k.js +2831 -0
  299. package/dist/chunk-r4cxb6t7.js +32 -0
  300. package/dist/chunk-rb8k68m7.js +118 -0
  301. package/dist/chunk-rdprgm4t.js +42 -0
  302. package/dist/chunk-rex82hys.js +1710 -0
  303. package/dist/chunk-rjjakkw2.js +2560 -0
  304. package/dist/chunk-rka6gcv3.js +304 -0
  305. package/dist/chunk-rkz12ghm.js +144 -0
  306. package/dist/chunk-rnc7m1qs.js +436 -0
  307. package/dist/chunk-rx6z23h0.js +165 -0
  308. package/dist/chunk-s76582j1.js +28 -0
  309. package/dist/chunk-sez03qd9.js +7140 -0
  310. package/dist/chunk-sjvdn2ep.js +130 -0
  311. package/dist/chunk-smwhyy8p.js +115 -0
  312. package/dist/chunk-snw7nh0d.js +695 -0
  313. package/dist/chunk-sqx9c057.js +193 -0
  314. package/dist/chunk-sscms68s.js +16 -0
  315. package/dist/chunk-stknnmsb.js +272 -0
  316. package/dist/chunk-sywdxbs6.js +853 -0
  317. package/dist/chunk-syxy4pf2.js +782 -0
  318. package/dist/chunk-t0hpqsqn.js +6157 -0
  319. package/dist/chunk-tjm70vnw.js +123 -0
  320. package/dist/chunk-trzh0msn.js +154 -0
  321. package/dist/chunk-v1z17cpg.js +723 -0
  322. package/dist/chunk-vsfj449x.js +333 -0
  323. package/dist/chunk-vvkq20tt.js +287 -0
  324. package/dist/chunk-vxgdzx6p.js +338 -0
  325. package/dist/chunk-vxqhjyfz.js +15 -0
  326. package/dist/chunk-vzsstfmb.js +80 -0
  327. package/dist/chunk-w1jew5sn.js +69 -0
  328. package/dist/chunk-w3kwr76v.js +789 -0
  329. package/dist/chunk-w40netr9.js +59 -0
  330. package/dist/chunk-w99cpfdg.js +559 -0
  331. package/dist/chunk-wacn14d2.js +271 -0
  332. package/dist/chunk-wbhrqrq3.js +3033 -0
  333. package/dist/chunk-wfg9g0p7.js +17612 -0
  334. package/dist/chunk-wj3vjsbx.js +93 -0
  335. package/dist/chunk-wjhq855a.js +372 -0
  336. package/dist/chunk-wr06gqxh.js +114 -0
  337. package/dist/chunk-ws0z2y1g.js +195 -0
  338. package/dist/chunk-wt62wqcj.js +98 -0
  339. package/dist/chunk-wx4v7ddx.js +42 -0
  340. package/dist/chunk-wy0t3vb2.js +6101 -0
  341. package/dist/chunk-wysz7qk4.js +280 -0
  342. package/dist/chunk-x63fx1vd.js +192 -0
  343. package/dist/chunk-x8b7vft8.js +132 -0
  344. package/dist/chunk-x8jhkgxb.js +346 -0
  345. package/dist/chunk-x9z4q5k5.js +275 -0
  346. package/dist/chunk-xjd7e9jq.js +126 -0
  347. package/dist/chunk-xjr0n27e.js +42 -0
  348. package/dist/chunk-xpwyw7cd.js +24 -0
  349. package/dist/chunk-xw4ycnyz.js +37 -0
  350. package/dist/chunk-y66bqywr.js +17303 -0
  351. package/dist/chunk-ycarry7d.js +157 -0
  352. package/dist/chunk-ycr0hp6v.js +1486 -0
  353. package/dist/chunk-yqmaw6hf.js +496 -0
  354. package/dist/chunk-yrtm7d23.js +602 -0
  355. package/dist/chunk-yts879rw.js +48 -0
  356. package/dist/chunk-yvmhx96e.js +347 -0
  357. package/dist/chunk-ywq00rg4.js +246 -0
  358. package/dist/chunk-yygeg5mj.js +752 -0
  359. package/dist/chunk-z0exw850.js +726 -0
  360. package/dist/chunk-z2dp53wn.js +17 -0
  361. package/dist/chunk-z4rzc9nd.js +103 -0
  362. package/dist/chunk-zb0akt77.js +684 -0
  363. package/dist/chunk-zb2xrj5t.js +1789 -0
  364. package/dist/chunk-zbptn0ky.js +423 -0
  365. package/dist/chunk-zd45wbmf.js +1090 -0
  366. package/dist/chunk-zjkvspz9.js +2050 -0
  367. package/dist/chunk-zke1sp3x.js +1524 -0
  368. package/dist/chunk-zv2cvfsv.js +58 -0
  369. package/dist/chunk-zy4tmqst.js +644 -0
  370. package/dist/chunk-zygzzzvk.js +192 -0
  371. package/dist/cli-21v3v6ny.md +1 -0
  372. package/dist/cli.js +246 -0
  373. package/dist/server-n5f2q89z.md +1 -0
  374. package/package.json +161 -0
@@ -0,0 +1,650 @@
1
+ // @bun
2
+ import {
3
+ init_channelNotification
4
+ } from "./chunk-drzb0rrd.js";
5
+ import {
6
+ PromptListChangedNotificationSchema,
7
+ ResourceListChangedNotificationSchema,
8
+ ToolListChangedNotificationSchema,
9
+ init_types
10
+ } from "./chunk-q0xkrxy8.js";
11
+ import {
12
+ require_jsx_dev_runtime,
13
+ require_react
14
+ } from "./chunk-0yz17yjy.js";
15
+ import {
16
+ init_analytics,
17
+ logEvent
18
+ } from "./chunk-ezpa510h.js";
19
+ import {
20
+ init_log,
21
+ logMCPDebug,
22
+ logMCPError
23
+ } from "./chunk-vsfj449x.js";
24
+ import {
25
+ errorMessage,
26
+ init_debug,
27
+ init_errors,
28
+ init_slowOperations,
29
+ logForDebugging
30
+ } from "./chunk-rex82hys.js";
31
+ import {
32
+ __esm,
33
+ __toESM
34
+ } from "./chunk-eta5aekm.js";
35
+ import {
36
+ clearClaudeAIMcpConfigsCache,
37
+ clearServerCache,
38
+ commandBelongsToServer,
39
+ dedupClaudeAiMcpServers,
40
+ doesEnterpriseMcpConfigExist,
41
+ excludeStalePluginClients,
42
+ fetchClaudeAIMcpConfigsIfEligible,
43
+ fetchCommandsForClient,
44
+ fetchResourcesForClient,
45
+ fetchToolsForClient,
46
+ filterMcpServersByPolicy,
47
+ getClaudeCodeMcpConfigs,
48
+ getMcpToolsCommandsAndResources,
49
+ init_AppState,
50
+ init_claudeai,
51
+ init_client,
52
+ init_config,
53
+ init_elicitationHandler,
54
+ init_messageQueueManager,
55
+ init_notifications,
56
+ init_utils,
57
+ isMcpServerDisabled,
58
+ reconnectMcpServerImpl,
59
+ registerElicitationHandler,
60
+ setMcpServerEnabled,
61
+ useAppState,
62
+ useAppStateStore,
63
+ useNotifications,
64
+ useSetAppState
65
+ } from "./chunk-ccyg9ap9.js";
66
+ import {
67
+ require_compiler_runtime
68
+ } from "./chunk-fpd3zzx1.js";
69
+ import {
70
+ getMcpPrefix,
71
+ init_growthbook,
72
+ init_mcpStringUtils,
73
+ init_omit,
74
+ init_reject,
75
+ omit_default,
76
+ reject_default
77
+ } from "./chunk-y66bqywr.js";
78
+ import {
79
+ getSessionId,
80
+ init_state
81
+ } from "./chunk-rjjakkw2.js";
82
+
83
+ // src/services/mcp/channelPermissions.ts
84
+ var init_channelPermissions = __esm(() => {
85
+ init_slowOperations();
86
+ init_growthbook();
87
+ });
88
+
89
+ // src/services/mcp/useManageMCPConnections.ts
90
+ import { basename } from "path";
91
+ function getErrorKey(error) {
92
+ const plugin = "plugin" in error ? error.plugin : "no-plugin";
93
+ return `${error.type}:${error.source}:${plugin}`;
94
+ }
95
+ function addErrorsToAppState(setAppState, newErrors) {
96
+ if (newErrors.length === 0)
97
+ return;
98
+ setAppState((prevState) => {
99
+ const existingKeys = new Set(prevState.plugins.errors.map((e) => getErrorKey(e)));
100
+ const uniqueNewErrors = newErrors.filter((error) => !existingKeys.has(getErrorKey(error)));
101
+ if (uniqueNewErrors.length === 0) {
102
+ return prevState;
103
+ }
104
+ return {
105
+ ...prevState,
106
+ plugins: {
107
+ ...prevState.plugins,
108
+ errors: [...prevState.plugins.errors, ...uniqueNewErrors]
109
+ }
110
+ };
111
+ });
112
+ }
113
+ function useManageMCPConnections(dynamicMcpConfig, isStrictMcpConfig = false) {
114
+ const store = useAppStateStore();
115
+ const _authVersion = useAppState((s) => s.authVersion);
116
+ const _pluginReconnectKey = useAppState((s) => s.mcp.pluginReconnectKey);
117
+ const setAppState = useSetAppState();
118
+ const reconnectTimersRef = import_react.useRef(new Map);
119
+ const channelWarnedKindsRef = import_react.useRef(new Set);
120
+ const channelPermCallbacksRef = import_react.useRef(null);
121
+ if (false) {}
122
+ import_react.useEffect(() => {
123
+ if (false) {}
124
+ }, [setAppState]);
125
+ const { addNotification } = useNotifications();
126
+ const MCP_BATCH_FLUSH_MS = 16;
127
+ const pendingUpdatesRef = import_react.useRef([]);
128
+ const flushTimerRef = import_react.useRef(null);
129
+ const flushPendingUpdates = import_react.useCallback(() => {
130
+ flushTimerRef.current = null;
131
+ const updates = pendingUpdatesRef.current;
132
+ if (updates.length === 0)
133
+ return;
134
+ pendingUpdatesRef.current = [];
135
+ setAppState((prevState) => {
136
+ let mcp = prevState.mcp;
137
+ for (const update of updates) {
138
+ const {
139
+ tools: rawTools,
140
+ commands: rawCmds,
141
+ resources: rawRes,
142
+ ...client
143
+ } = update;
144
+ const tools = client.type === "disabled" || client.type === "failed" ? rawTools ?? [] : rawTools;
145
+ const commands = client.type === "disabled" || client.type === "failed" ? rawCmds ?? [] : rawCmds;
146
+ const resources = client.type === "disabled" || client.type === "failed" ? rawRes ?? [] : rawRes;
147
+ const prefix = getMcpPrefix(client.name);
148
+ const existingClientIndex = mcp.clients.findIndex((c) => c.name === client.name);
149
+ const updatedClients = existingClientIndex === -1 ? [...mcp.clients, client] : mcp.clients.map((c) => c.name === client.name ? client : c);
150
+ const updatedTools = tools === undefined ? mcp.tools : [...reject_default(mcp.tools, (t) => t.name?.startsWith(prefix)), ...tools];
151
+ const updatedCommands = commands === undefined ? mcp.commands : [
152
+ ...reject_default(mcp.commands, (c) => commandBelongsToServer(c, client.name)),
153
+ ...commands
154
+ ];
155
+ const updatedResources = resources === undefined ? mcp.resources : {
156
+ ...mcp.resources,
157
+ ...resources.length > 0 ? { [client.name]: resources } : omit_default(mcp.resources, client.name)
158
+ };
159
+ mcp = {
160
+ ...mcp,
161
+ clients: updatedClients,
162
+ tools: updatedTools,
163
+ commands: updatedCommands,
164
+ resources: updatedResources
165
+ };
166
+ }
167
+ return { ...prevState, mcp };
168
+ });
169
+ }, [setAppState]);
170
+ const updateServer = import_react.useCallback((update) => {
171
+ pendingUpdatesRef.current.push(update);
172
+ if (flushTimerRef.current === null) {
173
+ flushTimerRef.current = setTimeout(flushPendingUpdates, MCP_BATCH_FLUSH_MS);
174
+ }
175
+ }, [flushPendingUpdates]);
176
+ const onConnectionAttempt = import_react.useCallback(({
177
+ client,
178
+ tools,
179
+ commands,
180
+ resources
181
+ }) => {
182
+ updateServer({ ...client, tools, commands, resources });
183
+ switch (client.type) {
184
+ case "connected": {
185
+ registerElicitationHandler(client.client, client.name, setAppState);
186
+ client.client.onclose = () => {
187
+ const configType = client.config.type ?? "stdio";
188
+ clearServerCache(client.name, client.config).catch(() => {
189
+ logForDebugging(`Failed to invalidate the server cache: ${client.name}`);
190
+ });
191
+ if (isMcpServerDisabled(client.name)) {
192
+ logMCPDebug(client.name, `Server is disabled, skipping automatic reconnection`);
193
+ return;
194
+ }
195
+ if (configType !== "stdio" && configType !== "sdk") {
196
+ const transportType = getTransportDisplayName(configType);
197
+ logMCPDebug(client.name, `${transportType} transport closed/disconnected, attempting automatic reconnection`);
198
+ const existingTimer = reconnectTimersRef.current.get(client.name);
199
+ if (existingTimer) {
200
+ clearTimeout(existingTimer);
201
+ reconnectTimersRef.current.delete(client.name);
202
+ }
203
+ const reconnectWithBackoff = async () => {
204
+ for (let attempt = 1;attempt <= MAX_RECONNECT_ATTEMPTS; attempt++) {
205
+ if (isMcpServerDisabled(client.name)) {
206
+ logMCPDebug(client.name, `Server disabled during reconnection, stopping retry`);
207
+ reconnectTimersRef.current.delete(client.name);
208
+ return;
209
+ }
210
+ updateServer({
211
+ ...client,
212
+ type: "pending",
213
+ reconnectAttempt: attempt,
214
+ maxReconnectAttempts: MAX_RECONNECT_ATTEMPTS
215
+ });
216
+ const reconnectStartTime = Date.now();
217
+ try {
218
+ const result = await reconnectMcpServerImpl(client.name, client.config);
219
+ const elapsed = Date.now() - reconnectStartTime;
220
+ if (result.client.type === "connected") {
221
+ logMCPDebug(client.name, `${transportType} reconnection successful after ${elapsed}ms (attempt ${attempt})`);
222
+ reconnectTimersRef.current.delete(client.name);
223
+ onConnectionAttempt(result);
224
+ return;
225
+ }
226
+ logMCPDebug(client.name, `${transportType} reconnection attempt ${attempt} completed with status: ${result.client.type}`);
227
+ if (attempt === MAX_RECONNECT_ATTEMPTS) {
228
+ logMCPDebug(client.name, `Max reconnection attempts (${MAX_RECONNECT_ATTEMPTS}) reached, giving up`);
229
+ reconnectTimersRef.current.delete(client.name);
230
+ onConnectionAttempt(result);
231
+ return;
232
+ }
233
+ } catch (error) {
234
+ const elapsed = Date.now() - reconnectStartTime;
235
+ logMCPError(client.name, `${transportType} reconnection attempt ${attempt} failed after ${elapsed}ms: ${error}`);
236
+ if (attempt === MAX_RECONNECT_ATTEMPTS) {
237
+ logMCPDebug(client.name, `Max reconnection attempts (${MAX_RECONNECT_ATTEMPTS}) reached, giving up`);
238
+ reconnectTimersRef.current.delete(client.name);
239
+ updateServer({ ...client, type: "failed" });
240
+ return;
241
+ }
242
+ }
243
+ const backoffMs = Math.min(INITIAL_BACKOFF_MS * Math.pow(2, attempt - 1), MAX_BACKOFF_MS);
244
+ logMCPDebug(client.name, `Scheduling reconnection attempt ${attempt + 1} in ${backoffMs}ms`);
245
+ await new Promise((resolve) => {
246
+ const timer = setTimeout(resolve, backoffMs);
247
+ reconnectTimersRef.current.set(client.name, timer);
248
+ });
249
+ }
250
+ };
251
+ reconnectWithBackoff();
252
+ } else {
253
+ updateServer({ ...client, type: "failed" });
254
+ }
255
+ };
256
+ if (false) {
257
+ switch (gate.action) {
258
+ case "register":
259
+ case "skip":
260
+ }
261
+ }
262
+ if (client.capabilities?.tools?.listChanged) {
263
+ client.client.setNotificationHandler(ToolListChangedNotificationSchema, async () => {
264
+ logMCPDebug(client.name, `Received tools/list_changed notification, refreshing tools`);
265
+ try {
266
+ const previousToolsPromise = fetchToolsForClient.cache.get(client.name);
267
+ fetchToolsForClient.cache.delete(client.name);
268
+ const newTools = await fetchToolsForClient(client);
269
+ const newCount = newTools.length;
270
+ if (previousToolsPromise) {
271
+ previousToolsPromise.then((previousTools) => {
272
+ logEvent("tengu_mcp_list_changed", {
273
+ type: "tools",
274
+ previousCount: previousTools.length,
275
+ newCount
276
+ });
277
+ }, () => {
278
+ logEvent("tengu_mcp_list_changed", {
279
+ type: "tools",
280
+ newCount
281
+ });
282
+ });
283
+ } else {
284
+ logEvent("tengu_mcp_list_changed", {
285
+ type: "tools",
286
+ newCount
287
+ });
288
+ }
289
+ updateServer({ ...client, tools: newTools });
290
+ } catch (error) {
291
+ logMCPError(client.name, `Failed to refresh tools after list_changed notification: ${errorMessage(error)}`);
292
+ }
293
+ });
294
+ }
295
+ if (client.capabilities?.prompts?.listChanged) {
296
+ client.client.setNotificationHandler(PromptListChangedNotificationSchema, async () => {
297
+ logMCPDebug(client.name, `Received prompts/list_changed notification, refreshing prompts`);
298
+ logEvent("tengu_mcp_list_changed", {
299
+ type: "prompts"
300
+ });
301
+ try {
302
+ fetchCommandsForClient.cache.delete(client.name);
303
+ const [mcpPrompts, mcpSkills] = await Promise.all([
304
+ fetchCommandsForClient(client),
305
+ Promise.resolve([])
306
+ ]);
307
+ updateServer({
308
+ ...client,
309
+ commands: [...mcpPrompts, ...mcpSkills]
310
+ });
311
+ clearSkillIndexCache?.();
312
+ } catch (error) {
313
+ logMCPError(client.name, `Failed to refresh prompts after list_changed notification: ${errorMessage(error)}`);
314
+ }
315
+ });
316
+ }
317
+ if (client.capabilities?.resources?.listChanged) {
318
+ client.client.setNotificationHandler(ResourceListChangedNotificationSchema, async () => {
319
+ logMCPDebug(client.name, `Received resources/list_changed notification, refreshing resources`);
320
+ logEvent("tengu_mcp_list_changed", {
321
+ type: "resources"
322
+ });
323
+ try {
324
+ fetchResourcesForClient.cache.delete(client.name);
325
+ if (false) {} else {
326
+ const newResources = await fetchResourcesForClient(client);
327
+ updateServer({ ...client, resources: newResources });
328
+ }
329
+ } catch (error) {
330
+ logMCPError(client.name, `Failed to refresh resources after list_changed notification: ${errorMessage(error)}`);
331
+ }
332
+ });
333
+ }
334
+ break;
335
+ }
336
+ case "needs-auth":
337
+ case "failed":
338
+ case "pending":
339
+ case "disabled":
340
+ break;
341
+ }
342
+ }, [updateServer]);
343
+ const sessionId = getSessionId();
344
+ import_react.useEffect(() => {
345
+ async function initializeServersAsPending() {
346
+ const { servers: existingConfigs, errors: mcpErrors } = isStrictMcpConfig ? { servers: {}, errors: [] } : await getClaudeCodeMcpConfigs(dynamicMcpConfig);
347
+ const configs = { ...existingConfigs, ...dynamicMcpConfig };
348
+ addErrorsToAppState(setAppState, mcpErrors);
349
+ setAppState((prevState) => {
350
+ const { stale, ...mcpWithoutStale } = excludeStalePluginClients(prevState.mcp, configs);
351
+ for (const s of stale) {
352
+ const timer = reconnectTimersRef.current.get(s.name);
353
+ if (timer) {
354
+ clearTimeout(timer);
355
+ reconnectTimersRef.current.delete(s.name);
356
+ }
357
+ if (s.type === "connected") {
358
+ s.client.onclose = undefined;
359
+ clearServerCache(s.name, s.config).catch(() => {});
360
+ }
361
+ }
362
+ const existingServerNames = new Set(mcpWithoutStale.clients.map((c) => c.name));
363
+ const newClients = Object.entries(configs).filter(([name]) => !existingServerNames.has(name)).map(([name, config]) => ({
364
+ name,
365
+ type: isMcpServerDisabled(name) ? "disabled" : "pending",
366
+ config
367
+ }));
368
+ if (newClients.length === 0 && stale.length === 0) {
369
+ return prevState;
370
+ }
371
+ return {
372
+ ...prevState,
373
+ mcp: {
374
+ ...prevState.mcp,
375
+ ...mcpWithoutStale,
376
+ clients: [...mcpWithoutStale.clients, ...newClients]
377
+ }
378
+ };
379
+ });
380
+ }
381
+ initializeServersAsPending().catch((error) => {
382
+ logMCPError("useManageMCPConnections", `Failed to initialize servers as pending: ${errorMessage(error)}`);
383
+ });
384
+ }, [
385
+ isStrictMcpConfig,
386
+ dynamicMcpConfig,
387
+ setAppState,
388
+ sessionId,
389
+ _pluginReconnectKey
390
+ ]);
391
+ import_react.useEffect(() => {
392
+ let cancelled = false;
393
+ async function loadAndConnectMcpConfigs() {
394
+ let claudeaiPromise;
395
+ if (isStrictMcpConfig || doesEnterpriseMcpConfigExist()) {
396
+ claudeaiPromise = Promise.resolve({});
397
+ } else {
398
+ clearClaudeAIMcpConfigsCache();
399
+ claudeaiPromise = fetchClaudeAIMcpConfigsIfEligible();
400
+ }
401
+ const { servers: claudeCodeConfigs, errors: mcpErrors } = isStrictMcpConfig ? { servers: {}, errors: [] } : await getClaudeCodeMcpConfigs(dynamicMcpConfig, claudeaiPromise);
402
+ if (cancelled)
403
+ return;
404
+ addErrorsToAppState(setAppState, mcpErrors);
405
+ const configs = { ...claudeCodeConfigs, ...dynamicMcpConfig };
406
+ const enabledConfigs = Object.fromEntries(Object.entries(configs).filter(([name]) => !isMcpServerDisabled(name)));
407
+ getMcpToolsCommandsAndResources(onConnectionAttempt, enabledConfigs).catch((error) => {
408
+ logMCPError("useManageMcpConnections", `Failed to get MCP resources: ${errorMessage(error)}`);
409
+ });
410
+ let claudeaiConfigs = {};
411
+ if (!isStrictMcpConfig) {
412
+ claudeaiConfigs = filterMcpServersByPolicy(await claudeaiPromise).allowed;
413
+ if (cancelled)
414
+ return;
415
+ if (Object.keys(claudeaiConfigs).length > 0) {
416
+ const { servers: dedupedClaudeAi } = dedupClaudeAiMcpServers(claudeaiConfigs, configs);
417
+ claudeaiConfigs = dedupedClaudeAi;
418
+ }
419
+ if (Object.keys(claudeaiConfigs).length > 0) {
420
+ setAppState((prevState) => {
421
+ const existingServerNames = new Set(prevState.mcp.clients.map((c) => c.name));
422
+ const newClients = Object.entries(claudeaiConfigs).filter(([name]) => !existingServerNames.has(name)).map(([name, config]) => ({
423
+ name,
424
+ type: isMcpServerDisabled(name) ? "disabled" : "pending",
425
+ config
426
+ }));
427
+ if (newClients.length === 0)
428
+ return prevState;
429
+ return {
430
+ ...prevState,
431
+ mcp: {
432
+ ...prevState.mcp,
433
+ clients: [...prevState.mcp.clients, ...newClients]
434
+ }
435
+ };
436
+ });
437
+ const enabledClaudeaiConfigs = Object.fromEntries(Object.entries(claudeaiConfigs).filter(([name]) => !isMcpServerDisabled(name)));
438
+ getMcpToolsCommandsAndResources(onConnectionAttempt, enabledClaudeaiConfigs).catch((error) => {
439
+ logMCPError("useManageMcpConnections", `Failed to get claude.ai MCP resources: ${errorMessage(error)}`);
440
+ });
441
+ }
442
+ }
443
+ const allConfigs = { ...configs, ...claudeaiConfigs };
444
+ const counts = {
445
+ enterprise: 0,
446
+ global: 0,
447
+ project: 0,
448
+ user: 0,
449
+ plugin: 0,
450
+ claudeai: 0
451
+ };
452
+ const stdioCommands = [];
453
+ for (const [name, serverConfig] of Object.entries(allConfigs)) {
454
+ if (serverConfig.scope === "enterprise")
455
+ counts.enterprise++;
456
+ else if (serverConfig.scope === "user")
457
+ counts.global++;
458
+ else if (serverConfig.scope === "project")
459
+ counts.project++;
460
+ else if (serverConfig.scope === "local")
461
+ counts.user++;
462
+ else if (serverConfig.scope === "dynamic")
463
+ counts.plugin++;
464
+ else if (serverConfig.scope === "claudeai")
465
+ counts.claudeai++;
466
+ if (process.env.USER_TYPE === "ant" && !isMcpServerDisabled(name) && (serverConfig.type === undefined || serverConfig.type === "stdio") && "command" in serverConfig) {
467
+ stdioCommands.push(basename(serverConfig.command));
468
+ }
469
+ }
470
+ logEvent("tengu_mcp_servers", {
471
+ ...counts,
472
+ ...process.env.USER_TYPE === "ant" && stdioCommands.length > 0 ? {
473
+ stdio_commands: stdioCommands.sort().join(",")
474
+ } : {}
475
+ });
476
+ }
477
+ loadAndConnectMcpConfigs();
478
+ return () => {
479
+ cancelled = true;
480
+ };
481
+ }, [
482
+ isStrictMcpConfig,
483
+ dynamicMcpConfig,
484
+ onConnectionAttempt,
485
+ setAppState,
486
+ _authVersion,
487
+ sessionId,
488
+ _pluginReconnectKey
489
+ ]);
490
+ import_react.useEffect(() => {
491
+ const timers = reconnectTimersRef.current;
492
+ return () => {
493
+ for (const timer of timers.values()) {
494
+ clearTimeout(timer);
495
+ }
496
+ timers.clear();
497
+ if (flushTimerRef.current !== null) {
498
+ clearTimeout(flushTimerRef.current);
499
+ flushTimerRef.current = null;
500
+ flushPendingUpdates();
501
+ }
502
+ };
503
+ }, [flushPendingUpdates]);
504
+ const reconnectMcpServer = import_react.useCallback(async (serverName) => {
505
+ const client = store.getState().mcp.clients.find((c) => c.name === serverName);
506
+ if (!client) {
507
+ throw new Error(`MCP server ${serverName} not found`);
508
+ }
509
+ const existingTimer = reconnectTimersRef.current.get(serverName);
510
+ if (existingTimer) {
511
+ clearTimeout(existingTimer);
512
+ reconnectTimersRef.current.delete(serverName);
513
+ }
514
+ const result = await reconnectMcpServerImpl(serverName, client.config);
515
+ onConnectionAttempt(result);
516
+ return result;
517
+ }, [store, onConnectionAttempt]);
518
+ const toggleMcpServer = import_react.useCallback(async (serverName) => {
519
+ const client = store.getState().mcp.clients.find((c) => c.name === serverName);
520
+ if (!client) {
521
+ throw new Error(`MCP server ${serverName} not found`);
522
+ }
523
+ const isCurrentlyDisabled = client.type === "disabled";
524
+ if (!isCurrentlyDisabled) {
525
+ const existingTimer = reconnectTimersRef.current.get(serverName);
526
+ if (existingTimer) {
527
+ clearTimeout(existingTimer);
528
+ reconnectTimersRef.current.delete(serverName);
529
+ }
530
+ setMcpServerEnabled(serverName, false);
531
+ if (client.type === "connected") {
532
+ await clearServerCache(serverName, client.config);
533
+ }
534
+ updateServer({
535
+ name: serverName,
536
+ type: "disabled",
537
+ config: client.config
538
+ });
539
+ } else {
540
+ setMcpServerEnabled(serverName, true);
541
+ updateServer({
542
+ name: serverName,
543
+ type: "pending",
544
+ config: client.config
545
+ });
546
+ const result = await reconnectMcpServerImpl(serverName, client.config);
547
+ onConnectionAttempt(result);
548
+ }
549
+ }, [store, updateServer, onConnectionAttempt]);
550
+ return { reconnectMcpServer, toggleMcpServer };
551
+ }
552
+ function getTransportDisplayName(type) {
553
+ switch (type) {
554
+ case "http":
555
+ return "HTTP";
556
+ case "ws":
557
+ case "ws-ide":
558
+ return "WebSocket";
559
+ default:
560
+ return "SSE";
561
+ }
562
+ }
563
+ var import_react, clearSkillIndexCache = null, MAX_RECONNECT_ATTEMPTS = 5, INITIAL_BACKOFF_MS = 1000, MAX_BACKOFF_MS = 30000;
564
+ var init_useManageMCPConnections = __esm(() => {
565
+ init_state();
566
+ init_client();
567
+ init_types();
568
+ init_omit();
569
+ init_reject();
570
+ init_analytics();
571
+ init_config();
572
+ init_debug();
573
+ init_state();
574
+ init_notifications();
575
+ init_AppState();
576
+ init_errors();
577
+ init_log();
578
+ init_messageQueueManager();
579
+ init_channelNotification();
580
+ init_channelPermissions();
581
+ init_claudeai();
582
+ init_elicitationHandler();
583
+ init_mcpStringUtils();
584
+ init_utils();
585
+ import_react = __toESM(require_react(), 1);
586
+ });
587
+
588
+ // src/services/mcp/MCPConnectionManager.tsx
589
+ function useMcpReconnect() {
590
+ const context = import_react2.useContext(MCPConnectionContext);
591
+ if (!context) {
592
+ throw new Error("useMcpReconnect must be used within MCPConnectionManager");
593
+ }
594
+ return context.reconnectMcpServer;
595
+ }
596
+ function useMcpToggleEnabled() {
597
+ const context = import_react2.useContext(MCPConnectionContext);
598
+ if (!context) {
599
+ throw new Error("useMcpToggleEnabled must be used within MCPConnectionManager");
600
+ }
601
+ return context.toggleMcpServer;
602
+ }
603
+ function MCPConnectionManager(t0) {
604
+ const $ = import_compiler_runtime.c(6);
605
+ const {
606
+ children,
607
+ dynamicMcpConfig,
608
+ isStrictMcpConfig
609
+ } = t0;
610
+ const {
611
+ reconnectMcpServer,
612
+ toggleMcpServer
613
+ } = useManageMCPConnections(dynamicMcpConfig, isStrictMcpConfig);
614
+ let t1;
615
+ if ($[0] !== reconnectMcpServer || $[1] !== toggleMcpServer) {
616
+ t1 = {
617
+ reconnectMcpServer,
618
+ toggleMcpServer
619
+ };
620
+ $[0] = reconnectMcpServer;
621
+ $[1] = toggleMcpServer;
622
+ $[2] = t1;
623
+ } else {
624
+ t1 = $[2];
625
+ }
626
+ const value = t1;
627
+ let t2;
628
+ if ($[3] !== children || $[4] !== value) {
629
+ t2 = /* @__PURE__ */ jsx_dev_runtime.jsxDEV(MCPConnectionContext.Provider, {
630
+ value,
631
+ children
632
+ }, undefined, false, undefined, this);
633
+ $[3] = children;
634
+ $[4] = value;
635
+ $[5] = t2;
636
+ } else {
637
+ t2 = $[5];
638
+ }
639
+ return t2;
640
+ }
641
+ var import_compiler_runtime, import_react2, jsx_dev_runtime, MCPConnectionContext;
642
+ var init_MCPConnectionManager = __esm(() => {
643
+ init_useManageMCPConnections();
644
+ import_compiler_runtime = __toESM(require_compiler_runtime(), 1);
645
+ import_react2 = __toESM(require_react(), 1);
646
+ jsx_dev_runtime = __toESM(require_jsx_dev_runtime(), 1);
647
+ MCPConnectionContext = import_react2.createContext(null);
648
+ });
649
+
650
+ export { init_channelPermissions, useMcpReconnect, useMcpToggleEnabled, MCPConnectionManager, init_MCPConnectionManager };