cognova 0.2.26 → 0.2.28

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 (200) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/{CxNJcty6.js → -XfM4jpu.js} +1 -1
  3. package/.output/public/_nuxt/0L-9iIbm.js +1 -0
  4. package/.output/public/_nuxt/{RIAd5Wd1.js → 0mcDe5Hg.js} +1 -1
  5. package/.output/public/_nuxt/{DLfV22bF.js → 4Nlt-3Ix.js} +1 -1
  6. package/.output/public/_nuxt/{C_hl3kCw.js → 5FVMuLeh.js} +1 -1
  7. package/.output/public/_nuxt/{C4Ii8cYC.js → 5qkiDtwf.js} +1 -1
  8. package/.output/public/_nuxt/{n_Arasow.js → 6_fEEpaq.js} +1 -1
  9. package/.output/public/_nuxt/{BZjMzGZM.js → 944smzho.js} +1 -1
  10. package/.output/public/_nuxt/{C-tfM08H.js → B03oRqJe.js} +1 -1
  11. package/.output/public/_nuxt/{CGgHmnnS.js → B06CcGVK.js} +3 -3
  12. package/.output/public/_nuxt/{FmfogFAR.js → B0UpgYEt.js} +1 -1
  13. package/.output/public/_nuxt/{CcJ0pNID.js → B0YLhHra.js} +1 -1
  14. package/.output/public/_nuxt/B0v0agy0.js +1 -0
  15. package/.output/public/_nuxt/{DmGbOc_e.js → B1A26hhf.js} +1 -1
  16. package/.output/public/_nuxt/{B38X0n2w.js → B592hx40.js} +1 -1
  17. package/.output/public/_nuxt/B5l6QVGz.js +1 -0
  18. package/.output/public/_nuxt/{BD07a6OS.js → B6BF2w8r.js} +3 -3
  19. package/.output/public/_nuxt/{rY0W1r76.js → B6m5ExpJ.js} +2 -2
  20. package/.output/public/_nuxt/{iTZxBLAr.js → B91qlTSF.js} +3 -3
  21. package/.output/public/_nuxt/B9sXHKws.js +1 -0
  22. package/.output/public/_nuxt/{eB60bVen.js → BAh-k-y8.js} +1 -1
  23. package/.output/public/_nuxt/{wSCSxjgr.js → BDQ6hxO7.js} +1 -1
  24. package/.output/public/_nuxt/{DEmzTuCa.js → BGytjslk.js} +1 -1
  25. package/.output/public/_nuxt/{CZQeFnOf.js → BIoHE1oQ.js} +1 -1
  26. package/.output/public/_nuxt/{BHcVB9Fo.js → BNXyokAF.js} +1 -1
  27. package/.output/public/_nuxt/{Irw5CrIe.js → BNxg8OvE.js} +1 -1
  28. package/.output/public/_nuxt/{C1wI_STa.js → BPBLcBHM.js} +2 -2
  29. package/.output/public/_nuxt/{BGV4_re9.js → BQeDYnyj.js} +1 -1
  30. package/.output/public/_nuxt/{pJF5jz72.js → BUfJTKJk.js} +1 -1
  31. package/.output/public/_nuxt/{B27NM422.js → BVJkcOi4.js} +1 -1
  32. package/.output/public/_nuxt/{B8fLdQfp.js → BVNZYpXH.js} +1 -1
  33. package/.output/public/_nuxt/{Dc_VwXJs.js → BZ3u3Znq.js} +1 -1
  34. package/.output/public/_nuxt/{CjkXqgrT.js → B_V_KZmg.js} +1 -1
  35. package/.output/public/_nuxt/{DB0uzc_1.js → BaTcZylh.js} +1 -1
  36. package/.output/public/_nuxt/{zvDhkxQS.js → BbdFZa4U.js} +1 -1
  37. package/.output/public/_nuxt/{DmHn_Ae8.js → BeAxkmtt.js} +1 -1
  38. package/.output/public/_nuxt/{CruI_TS3.js → BfiU8B4M.js} +1 -1
  39. package/.output/public/_nuxt/{DuH9QzIG.js → BhOf69HZ.js} +1 -1
  40. package/.output/public/_nuxt/{lfg-J79K.js → BlKgmZLh.js} +1 -1
  41. package/.output/public/_nuxt/{Cfce_cVw.js → BlplwzgB.js} +1 -1
  42. package/.output/public/_nuxt/{D5IKvGig.js → BnmZcuhY.js} +1 -1
  43. package/.output/public/_nuxt/{DfAWgXhg.js → BpExBTyC.js} +1 -1
  44. package/.output/public/_nuxt/{DIMnGgEU.js → BuURpKT4.js} +1 -1
  45. package/.output/public/_nuxt/{B5oEzB-M.js → Bvqgc_wA.js} +1 -1
  46. package/.output/public/_nuxt/{Dfi2mj_-.js → C0FuVjdX.js} +1 -1
  47. package/.output/public/_nuxt/{QNqSZCYh.js → C1RFLzd_.js} +1 -1
  48. package/.output/public/_nuxt/{DMCE1Up6.js → C4MrxKnP.js} +1 -1
  49. package/.output/public/_nuxt/{D5AjrkGO.js → C4ui9LWq.js} +1 -1
  50. package/.output/public/_nuxt/{iVfmia7K.js → C7RIYfkH.js} +1 -1
  51. package/.output/public/_nuxt/{D4wS6gzr.js → C7hn68Tp.js} +1 -1
  52. package/.output/public/_nuxt/{BHAaeL5L.js → C8gC5cUj.js} +1 -1
  53. package/.output/public/_nuxt/{CBJQYyqD.js → CAJH0xMY.js} +1 -1
  54. package/.output/public/_nuxt/{Bk_mzzQ3.js → CBpuaar1.js} +1 -1
  55. package/.output/public/_nuxt/{m9zGH_2s.js → CDP4J5em.js} +1 -1
  56. package/.output/public/_nuxt/{NNQizITf.js → CGTQGJ_c.js} +1 -1
  57. package/.output/public/_nuxt/{Ehiy7Wkv.js → CHd8mdNy.js} +1 -1
  58. package/.output/public/_nuxt/{BtVAOj3K.js → CHn6tbtE.js} +1 -1
  59. package/.output/public/_nuxt/{B1ea1Zc2.js → CKfAI3Hb.js} +1 -1
  60. package/.output/public/_nuxt/{CbLvLXmb.js → CLm_rHHY.js} +1 -1
  61. package/.output/public/_nuxt/{DFPu4h4a.js → CLzxl_Kg.js} +1 -1
  62. package/.output/public/_nuxt/{C3dJrgZH.js → CNVj60PG.js} +1 -1
  63. package/.output/public/_nuxt/{VRRYjCaC.js → CNi_mvQS.js} +1 -1
  64. package/.output/public/_nuxt/{46eRQaVv.js → COMJZX17.js} +1 -1
  65. package/.output/public/_nuxt/{Brmj91Ns.js → CQcJNYmv.js} +1 -1
  66. package/.output/public/_nuxt/{BMTKvzsm.js → CT8T1FW9.js} +1 -1
  67. package/.output/public/_nuxt/{B02JOKtW.js → CTJDAjdO.js} +1 -1
  68. package/.output/public/_nuxt/{w3RSHXA6.js → CTXxmwx3.js} +1 -1
  69. package/.output/public/_nuxt/{CIMG8oEU.js → CV92g0qz.js} +1 -1
  70. package/.output/public/_nuxt/{DEBOaUgW.js → CVwzer_Y.js} +1 -1
  71. package/.output/public/_nuxt/{6k0gxaWW.js → CXRkSVkD.js} +1 -1
  72. package/.output/public/_nuxt/{C7Wu2u5C.js → CamCmKfq.js} +1 -1
  73. package/.output/public/_nuxt/{DM9s28TO.js → CaohnGAD.js} +1 -1
  74. package/.output/public/_nuxt/{BqyI8nU4.js → Cg8k3_b4.js} +1 -1
  75. package/.output/public/_nuxt/{rVZcJ6Pz.js → CiQJYbKL.js} +1 -1
  76. package/.output/public/_nuxt/{Co86ycpI.js → Cjj-eCEV.js} +1 -1
  77. package/.output/public/_nuxt/{B3TXSB_R.js → CkfP4uja.js} +1 -1
  78. package/.output/public/_nuxt/{81-iumfM.js → CoUQ3qpL.js} +1 -1
  79. package/.output/public/_nuxt/{CPb6IrVT.js → CopZwjN8.js} +1 -1
  80. package/.output/public/_nuxt/{FGRiZ9J1.js → Cpyrc9BG.js} +1 -1
  81. package/.output/public/_nuxt/{6DKJrPTD.js → CtLfbSRS.js} +1 -1
  82. package/.output/public/_nuxt/{CVTUqEcr.js → CtyKXJ-J.js} +1 -1
  83. package/.output/public/_nuxt/{By5L5Smf.js → CvaD7s2l.js} +1 -1
  84. package/.output/public/_nuxt/{QmdcFt0E.js → Cw2TcJMF.js} +1 -1
  85. package/.output/public/_nuxt/{ByXbV9Xa.js → Cwel2ykQ.js} +1 -1
  86. package/.output/public/_nuxt/{CLmiWiqr.js → CyZlzytZ.js} +1 -1
  87. package/.output/public/_nuxt/{DXAD_aZW.js → Cygjd4rF.js} +1 -1
  88. package/.output/public/_nuxt/{DoSrePUc.js → CzxGRepV.js} +1 -1
  89. package/.output/public/_nuxt/{Dkpxacka.js → D0fJg-Y2.js} +1 -1
  90. package/.output/public/_nuxt/{BW-7wimi.js → D12yGpMq.js} +1 -1
  91. package/.output/public/_nuxt/{uCsI7fpg.js → D7Bxfxio.js} +1 -1
  92. package/.output/public/_nuxt/{D_1GDAlv.js → DEl5RR7R.js} +1 -1
  93. package/.output/public/_nuxt/{3hFj0Mf_.js → DFVXHy0C.js} +1 -1
  94. package/.output/public/_nuxt/{7msxmF5v.js → DFW8HOVB.js} +1 -1
  95. package/.output/public/_nuxt/{CD6r4z4e.js → DH2yWNbZ.js} +1 -1
  96. package/.output/public/_nuxt/{AMPsjNHJ.js → DIDjR8Ry.js} +1 -1
  97. package/.output/public/_nuxt/{B8na0pik.js → DKHJBr2m.js} +1 -1
  98. package/.output/public/_nuxt/{CDKJK4wW.js → DKd2_wBj.js} +1 -1
  99. package/.output/public/_nuxt/{CD_jDSWh.js → DKrd1pCW.js} +1 -1
  100. package/.output/public/_nuxt/{gTGPvkTX.js → DOcEwtqN.js} +1 -1
  101. package/.output/public/_nuxt/{B0_Iu2zi.js → DSQ9bpNJ.js} +1 -1
  102. package/.output/public/_nuxt/{BigIAhcT.js → DWG9jKCo.js} +1 -1
  103. package/.output/public/_nuxt/{Cj3gDP-y.js → DY78sr_b.js} +1 -1
  104. package/.output/public/_nuxt/{Cwdn7ZtG.js → DZQxxfue.js} +1 -1
  105. package/.output/public/_nuxt/{DN5cHXGS.js → DZpgj5sA.js} +1 -1
  106. package/.output/public/_nuxt/{CZ5B974o.js → Dc8vLBQN.js} +1 -1
  107. package/.output/public/_nuxt/{9vdFTPZC.js → DcT64MxD.js} +1 -1
  108. package/.output/public/_nuxt/{BwLYFg9w.js → DdmLHNRP.js} +1 -1
  109. package/.output/public/_nuxt/{Bn175bDC.js → Dg19_qAK.js} +1 -1
  110. package/.output/public/_nuxt/{BTImkTzA.js → DhIZvLeI.js} +1 -1
  111. package/.output/public/_nuxt/{DOTIy97K.js → DjaEQQhf.js} +1 -1
  112. package/.output/public/_nuxt/{CJLlvuDm.js → DkUMlRf8.js} +1 -1
  113. package/.output/public/_nuxt/{BTs0cu3F.js → DkjKiJOq.js} +1 -1
  114. package/.output/public/_nuxt/{CIDjuJ7I.js → DlR5hUi3.js} +1 -1
  115. package/.output/public/_nuxt/{P3qGksT8.js → DnfG5RzJ.js} +1 -1
  116. package/.output/public/_nuxt/{DOs_ozN6.js → DohhIeRk.js} +1 -1
  117. package/.output/public/_nuxt/{lA6pb86B.js → Dom1vIen.js} +1 -1
  118. package/.output/public/_nuxt/{BGa5KqPj.js → Ds97nj0P.js} +1 -1
  119. package/.output/public/_nuxt/{v-LIF5tR.js → DxT3YmAC.js} +1 -1
  120. package/.output/public/_nuxt/{UQIfAAmf.js → DxcN7Uv7.js} +1 -1
  121. package/.output/public/_nuxt/{qI8JV5dU.js → DxcbYcrE.js} +1 -1
  122. package/.output/public/_nuxt/{DfP6jcEM.js → DyVUuE07.js} +1 -1
  123. package/.output/public/_nuxt/{DoGLYOlq.js → Dz-vwDzE.js} +1 -1
  124. package/.output/public/_nuxt/{CrHLmWKE.js → EeCE4NvG.js} +1 -1
  125. package/.output/public/_nuxt/{BVkPh7-9.js → EnGykH_X.js} +1 -1
  126. package/.output/public/_nuxt/{By6urPVf.js → GJMyZaby.js} +1 -1
  127. package/.output/public/_nuxt/{mLs_Q7_U.js → I7OHJVxg.js} +1 -1
  128. package/.output/public/_nuxt/{bHsFNLQP.js → K0RZW9fp.js} +1 -1
  129. package/.output/public/_nuxt/{CSyssKl8.js → K1o4brLx.js} +1 -1
  130. package/.output/public/_nuxt/{CZvTOsiz.js → OKVQJ7yj.js} +1 -1
  131. package/.output/public/_nuxt/{3AgfIirx.js → Q3QJAuZ2.js} +1 -1
  132. package/.output/public/_nuxt/{D57E8FC4.js → Tirj2rC0.js} +1 -1
  133. package/.output/public/_nuxt/{BVcLiEDk.js → VcsszHDj.js} +1 -1
  134. package/.output/public/_nuxt/WG3LXN-9.js +1 -0
  135. package/.output/public/_nuxt/{CCmSsj4q.js → aUYaYlYl.js} +1 -1
  136. package/.output/public/_nuxt/builds/latest.json +1 -1
  137. package/.output/public/_nuxt/builds/meta/7de5e0df-2e0a-435c-a2e3-fc2312beb6ad.json +1 -0
  138. package/.output/public/_nuxt/{swgNRlWy.js → cGEbEAGz.js} +1 -1
  139. package/.output/public/_nuxt/{BaHB7JKe.js → ds0WOZHj.js} +1 -1
  140. package/.output/public/_nuxt/{IIvTjJqa.js → e4zQkzJm.js} +1 -1
  141. package/.output/public/_nuxt/{D45gWhSU.js → eFu2sWbl.js} +1 -1
  142. package/.output/public/_nuxt/entry.B0qcqYYu.css +1 -0
  143. package/.output/public/_nuxt/{ChIzYvpz.js → ggWK6BEa.js} +1 -1
  144. package/.output/public/_nuxt/{pFPRVtL-.js → hkCaWCzP.js} +1 -1
  145. package/.output/public/_nuxt/{BW0bq0Nu.js → jF9FNyOl.js} +1 -1
  146. package/.output/public/_nuxt/{CjVBL0o-.js → jenjyHml.js} +1 -1
  147. package/.output/public/_nuxt/{CtNN2F57.js → kMwuhvCf.js} +1 -1
  148. package/.output/public/_nuxt/{1_nO5SO6.js → oWO88tvt.js} +1 -1
  149. package/.output/public/_nuxt/{d85YwuyC.js → olSL1K5t.js} +1 -1
  150. package/.output/public/_nuxt/{DwEfItxe.js → ptAR8AWT.js} +1 -1
  151. package/.output/public/_nuxt/{Dbv2gAYq.js → rTscsMvH.js} +1 -1
  152. package/.output/public/_nuxt/{Bxs6RCfp.js → xooRr3tW.js} +1 -1
  153. package/.output/public/_nuxt/{n5X4vNX9.js → zApTn6EM.js} +2 -2
  154. package/.output/server/chunks/build/client.precomputed.mjs +1 -1
  155. package/.output/server/chunks/build/{memories-BqA719O1.mjs → memories-DLa6uEfV.mjs} +2 -31
  156. package/.output/server/chunks/build/memories-DLa6uEfV.mjs.map +1 -0
  157. package/.output/server/chunks/build/server.mjs +1 -1
  158. package/.output/server/chunks/nitro/nitro.mjs +944 -922
  159. package/.output/server/chunks/nitro/nitro.mjs.map +1 -1
  160. package/.output/server/chunks/routes/{terminal.mjs → _ws/terminal.mjs} +39 -28
  161. package/.output/server/chunks/routes/_ws/terminal.mjs.map +1 -0
  162. package/.output/server/chunks/routes/api/memory/context.get.mjs +13 -9
  163. package/.output/server/chunks/routes/api/memory/context.get.mjs.map +1 -1
  164. package/.output/server/chunks/routes/api/memory/extract.post.mjs +4 -7
  165. package/.output/server/chunks/routes/api/memory/extract.post.mjs.map +1 -1
  166. package/.output/server/chunks/routes/api/memory/search.get.mjs +22 -25
  167. package/.output/server/chunks/routes/api/memory/search.get.mjs.map +1 -1
  168. package/.output/server/chunks/routes/api/memory/store.post.mjs +1 -3
  169. package/.output/server/chunks/routes/api/memory/store.post.mjs.map +1 -1
  170. package/.output/server/chunks/routes/notifications.mjs +1 -1
  171. package/.output/server/package.json +1 -1
  172. package/Claude/skills/memory/memory.py +1 -7
  173. package/app/composables/useTerminal.ts +1 -1
  174. package/app/pages/memories.vue +0 -15
  175. package/dist/cli/index.js +1 -0
  176. package/package.json +1 -1
  177. package/server/api/memory/context.get.ts +19 -15
  178. package/server/api/memory/extract.post.ts +1 -2
  179. package/server/api/memory/search.get.ts +29 -34
  180. package/server/api/memory/store.post.ts +1 -2
  181. package/server/bridge/responder.ts +10 -5
  182. package/server/db/schema.ts +1 -2
  183. package/server/drizzle/migrations/0017_unusual_landau.sql +1 -0
  184. package/server/drizzle/migrations/meta/0017_snapshot.json +1965 -0
  185. package/server/drizzle/migrations/meta/_journal.json +7 -0
  186. package/server/routes/_ws/terminal.ts +111 -0
  187. package/server/services/memory-extractor.ts +3 -6
  188. package/server/utils/document-sync.ts +27 -20
  189. package/server/utils/pty-manager.ts +12 -3
  190. package/shared/types/index.ts +1 -4
  191. package/.output/public/_nuxt/BhtKu4xV.js +0 -1
  192. package/.output/public/_nuxt/CNB4wNeh.js +0 -1
  193. package/.output/public/_nuxt/CnB-ybCZ.js +0 -1
  194. package/.output/public/_nuxt/DAjV9Cip.js +0 -1
  195. package/.output/public/_nuxt/Suor9Vto.js +0 -1
  196. package/.output/public/_nuxt/builds/meta/d37c41da-8cec-4479-a3ac-3097aa4fb2e0.json +0 -1
  197. package/.output/public/_nuxt/entry.ZJxWCrU6.css +0 -1
  198. package/.output/server/chunks/build/memories-BqA719O1.mjs.map +0 -1
  199. package/.output/server/chunks/routes/terminal.mjs.map +0 -1
  200. package/server/routes/terminal.ts +0 -98
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./CDKJK4wW.js","./BD07a6OS.js","./CGgHmnnS.js","./entry.ZJxWCrU6.css","./88opOQSr.js","./iik6CYzq.js","./n5X4vNX9.js","./AMPsjNHJ.js","./B8na0pik.js","./CqkleIqs.js","./BCNkgdIP.js","./DPfMkruS.js","./wDzz0qaB.js","./BPQ3VLAy.js","./Cp-IABpG.js","./CnnebwVN.js","./2EtD6e53.js","./BGJmEYvX.js","./CylS5w8V.js","./D3fng9L2.js","./Ck_RvX-X.js","./BIGW1oBm.js","./BLtJtn59.js"])))=>i.map(i=>d[i]);
2
- import{bT as g}from"./CGgHmnnS.js";import{getMdcConfigs as Ot}from"./bNaE6FFb.js";function te(e){if([...e].length!==1)throw new Error(`Expected "${e}" to be a single code point`);return e.codePointAt(0)}function Mt(e,t,r){return e.has(t)||e.set(t,r),e.get(t)}const Me=new Set(["alnum","alpha","ascii","blank","cntrl","digit","graph","lower","print","punct","space","upper","word","xdigit"]),S=String.raw;function re(e,t){if(e==null)throw new Error(t??"Value expected");return e}const at=S`\[\^?`,ut=`c.? | C(?:-.?)?|${S`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x20\w]*\})?`}|${S`x[89A-Fa-f]\p{AHex}(?:\\x[89A-Fa-f]\p{AHex})*`}|${S`u(?:\p{AHex}{4})? | x\{[^\}]*\}? | x\p{AHex}{0,2}`}|${S`o\{[^\}]*\}?`}|${S`\d{1,3}`}`,Re=/[?*+][?+]?|\{(?:\d+(?:,\d*)?|,\d+)\}\??/,ue=new RegExp(S`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DKd2_wBj.js","./B6BF2w8r.js","./B06CcGVK.js","./entry.B0qcqYYu.css","./88opOQSr.js","./iik6CYzq.js","./zApTn6EM.js","./DIDjR8Ry.js","./DKHJBr2m.js","./CqkleIqs.js","./BCNkgdIP.js","./DPfMkruS.js","./wDzz0qaB.js","./BPQ3VLAy.js","./Cp-IABpG.js","./CnnebwVN.js","./2EtD6e53.js","./BGJmEYvX.js","./CylS5w8V.js","./D3fng9L2.js","./Ck_RvX-X.js","./BIGW1oBm.js","./BLtJtn59.js"])))=>i.map(i=>d[i]);
2
+ import{bT as g}from"./B06CcGVK.js";import{getMdcConfigs as Ot}from"./bNaE6FFb.js";function te(e){if([...e].length!==1)throw new Error(`Expected "${e}" to be a single code point`);return e.codePointAt(0)}function Mt(e,t,r){return e.has(t)||e.set(t,r),e.get(t)}const Me=new Set(["alnum","alpha","ascii","blank","cntrl","digit","graph","lower","print","punct","space","upper","word","xdigit"]),S=String.raw;function re(e,t){if(e==null)throw new Error(t??"Value expected");return e}const at=S`\[\^?`,ut=`c.? | C(?:-.?)?|${S`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x20\w]*\})?`}|${S`x[89A-Fa-f]\p{AHex}(?:\\x[89A-Fa-f]\p{AHex})*`}|${S`u(?:\p{AHex}{4})? | x\{[^\}]*\}? | x\p{AHex}{0,2}`}|${S`o\{[^\}]*\}?`}|${S`\d{1,3}`}`,Re=/[?*+][?+]?|\{(?:\d+(?:,\d*)?|,\d+)\}\??/,ue=new RegExp(S`
3
3
  \\ (?:
4
4
  ${ut}
5
5
  | [gk]<[^>]*>?
@@ -139,7 +139,7 @@ XID_Continue XIDC
139
139
  XID_Start XIDS`.split(/\s/).map(e=>[ge(e),e])),Dr=new Map([["s",v(383)],[v(383),"s"]]),Fr=new Map([[v(223),v(7838)],[v(107),v(8490)],[v(229),v(8491)],[v(969),v(8486)]]),Gr=new Map([W(453),W(456),W(459),W(498),...Ae(8072,8079),...Ae(8088,8095),...Ae(8104,8111),W(8124),W(8140),W(8188)]),Vr=new Map([["alnum",w`[\p{Alpha}\p{Nd}]`],["alpha",w`\p{Alpha}`],["ascii",w`\p{ASCII}`],["blank",w`[\p{Zs}\t]`],["cntrl",w`\p{Cc}`],["digit",w`\p{Nd}`],["graph",w`[\P{space}&&\P{Cc}&&\P{Cn}&&\P{Cs}]`],["lower",w`\p{Lower}`],["print",w`[[\P{space}&&\P{Cc}&&\P{Cn}&&\P{Cs}]\p{Zs}]`],["punct",w`[\p{P}\p{S}]`],["space",w`\p{space}`],["upper",w`\p{Upper}`],["word",w`[\p{Alpha}\p{M}\p{Nd}\p{Pc}]`],["xdigit",w`\p{AHex}`]]);function Br(e,t){const r=[];for(let n=e;n<=t;n++)r.push(n);return r}function W(e){const t=v(e);return[t.toLowerCase(),t]}function Ae(e,t){return Br(e,t).map(r=>W(r))}var At=new Set(["Lower","Lowercase","Upper","Uppercase","Ll","Lowercase_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter"]);function Hr(e,t){const r={accuracy:"default",asciiWordBoundaries:!1,avoidSubclass:!1,bestEffortTarget:"ES2025",...t};kt(e);const n={accuracy:r.accuracy,asciiWordBoundaries:r.asciiWordBoundaries,avoidSubclass:r.avoidSubclass,flagDirectivesByAlt:new Map,jsGroupNameMap:new Map,minTargetEs2024:Te(r.bestEffortTarget,"ES2024"),passedLookbehind:!1,strategy:null,subroutineRefMap:new Map,supportedGNodes:new Set,digitIsAscii:e.flags.digitIsAscii,spaceIsAscii:e.flags.spaceIsAscii,wordIsAscii:e.flags.wordIsAscii};se(e,Wr,n);const i={dotAll:e.flags.dotAll,ignoreCase:e.flags.ignoreCase},s={currentFlags:i,prevFlags:null,globalFlags:i,groupOriginByCopy:new Map,groupsByName:new Map,multiplexCapturesToLeftByRef:new Map,openRefs:new Map,reffedNodesByReferencer:new Map,subroutineRefMap:n.subroutineRefMap};se(e,zr,s);const o={groupsByName:s.groupsByName,highestOrphanBackref:0,numCapturesToLeft:0,reffedNodesByReferencer:s.reffedNodesByReferencer};return se(e,jr,o),e._originMap=s.groupOriginByCopy,e._strategy=n.strategy,e}var Wr={AbsenceFunction({node:e,parent:t,replaceWith:r}){const{body:n,kind:i}=e;if(i==="repeater"){const s=U();s.body[0].body.push(X({negate:!0,body:n}),ee("Any"));const o=U();o.body[0].body.push(gt("greedy",0,1/0,s)),r(k(o,t),{traverse:!0})}else throw new Error('Unsupported absence function "(?~|"')},Alternative:{enter({node:e,parent:t,key:r},{flagDirectivesByAlt:n}){const i=e.body.filter(s=>s.kind==="flags");for(let s=r+1;s<t.body.length;s++){const o=t.body[s];ie(n,o,[]).push(...i)}},exit({node:e},{flagDirectivesByAlt:t}){if(t.get(e)?.length){const r=vt(t.get(e));if(r){const n=U({flags:r});n.body[0].body=e.body,e.body=[k(n,e)]}}}},Assertion({node:e,parent:t,key:r,container:n,root:i,remove:s,replaceWith:o},a){const{kind:u,negate:c}=e,{asciiWordBoundaries:f,avoidSubclass:l,supportedGNodes:h,wordIsAscii:d}=a;if(u==="text_segment_boundary")throw new Error(`Unsupported text segment boundary "\\${c?"Y":"y"}"`);if(u==="line_end")o(k(X({body:[Q({body:[Ie("string_end")]}),Q({body:[he(10)]})]}),t));else if(u==="line_start")o(k(G(w`(?<=\A|\n(?!\z))`,{skipLookbehindValidation:!0}),t));else if(u==="search_start")if(h.has(e))i.flags.sticky=!0,s();else{const p=n[r-1];if(p&&Kr(p))o(k(X({negate:!0}),t));else{if(l)throw new Error(w`Uses "\G" in a way that requires a subclass`);o(z(Ie("string_start"),t)),a.strategy="clip_search"}}else if(!(u==="string_end"||u==="string_start"))if(u==="string_end_newline")o(k(G(w`(?=\n?\z)`),t));else if(u==="word_boundary"){if(!d&&!f){const p=`(?:(?<=${F})(?!${F})|(?<!${F})(?=${F}))`,m=`(?:(?<=${F})(?=${F})|(?<!${F})(?!${F}))`;o(k(G(c?m:p),t))}}else throw new Error(`Unexpected assertion kind "${u}"`)},Backreference({node:e},{jsGroupNameMap:t}){let{ref:r}=e;typeof r=="string"&&!xe(r)&&(r=ke(r,t),e.ref=r)},CapturingGroup({node:e},{jsGroupNameMap:t,subroutineRefMap:r}){let{name:n}=e;n&&!xe(n)&&(n=ke(n,t),e.name=n),r.set(e.number,e),n&&r.set(n,e)},CharacterClassRange({node:e,parent:t,replaceWith:r}){if(t.kind==="intersection"){const n=pe({body:[e]});r(k(n,t),{traverse:!0})}},CharacterSet({node:e,parent:t,replaceWith:r},{accuracy:n,minTargetEs2024:i,digitIsAscii:s,spaceIsAscii:o,wordIsAscii:a}){const{kind:u,negate:c,value:f}=e;if(s&&(u==="digit"||f==="digit")){r(z(Le("digit",{negate:c}),t));return}if(o&&(u==="space"||f==="space")){r(k(ve(G(Nr),c),t));return}if(a&&(u==="word"||f==="word")){r(z(Le("word",{negate:c}),t));return}if(u==="any")r(z(ee("Any"),t));else if(u==="digit")r(z(ee("Nd",{negate:c}),t));else if(u!=="dot")if(u==="text_segment"){if(n==="strict")throw new Error(w`Use of "\X" requires non-strict accuracy`);const l="\\p{Emoji}(?:\\p{EMod}|\\uFE0F\\u20E3?|[\\x{E0020}-\\x{E007E}]+\\x{E007F})?",h=w`\p{RI}{2}|${l}(?:\u200D${l})*`;r(k(G(w`(?>\r\n|${i?w`\p{RGI_Emoji}`:h}|\P{M}\p{M}*)`,{skipPropertyNameValidation:!0}),t))}else if(u==="hex")r(z(ee("AHex",{negate:c}),t));else if(u==="newline")r(k(G(c?`[^
140
140
  ]`:`(?>\r
141
141
  ?|[
142
- \v\f…\u2028\u2029])`),t));else if(u==="posix")if(!i&&(f==="graph"||f==="print")){if(n==="strict")throw new Error(`POSIX class "${f}" requires min target ES2024 or non-strict accuracy`);let l={graph:"!-~",print:" -~"}[f];c&&(l=`\0-${v(l.codePointAt(0)-1)}${v(l.codePointAt(2)+1)}-􏿿`),r(k(G(`[${l}]`),t))}else r(k(ve(G(Vr.get(f)),c),t));else if(u==="property")Ue.has(ge(f))||(e.key="sc");else if(u==="space")r(z(ee("space",{negate:c}),t));else if(u==="word")r(k(ve(G(F),c),t));else throw new Error(`Unexpected character set kind "${u}"`)},Directive({node:e,parent:t,root:r,remove:n,replaceWith:i,removeAllPrevSiblings:s,removeAllNextSiblings:o}){const{kind:a,flags:u}=e;if(a==="flags")if(!u.enable&&!u.disable)n();else{const c=U({flags:u});c.body[0].body=o(),i(k(c,t),{traverse:!0})}else if(a==="keep"){const c=r.body[0],l=r.body.length===1&&pt(c,{type:"Group"})&&c.body[0].body.length===1?c.body[0]:r;if(t.parent!==l||l.body.length>1)throw new Error(w`Uses "\K" in a way that's unsupported`);const h=X({behind:!0});h.body[0].body=s(),i(k(h,t))}else throw new Error(`Unexpected directive kind "${a}"`)},Flags({node:e,parent:t}){if(e.posixIsAscii)throw new Error('Unsupported flag "P"');if(e.textSegmentMode==="word")throw new Error('Unsupported flag "y{w}"');["digitIsAscii","extended","posixIsAscii","spaceIsAscii","wordIsAscii","textSegmentMode"].forEach(r=>delete e[r]),Object.assign(e,{global:!1,hasIndices:!1,multiline:!1,sticky:e.sticky??!1}),t.options={disable:{x:!0,n:!0},force:{v:!0}}},Group({node:e}){if(!e.flags)return;const{enable:t,disable:r}=e.flags;t?.extended&&delete t.extended,r?.extended&&delete r.extended,t?.dotAll&&r?.dotAll&&delete t.dotAll,t?.ignoreCase&&r?.ignoreCase&&delete t.ignoreCase,t&&!Object.keys(t).length&&delete e.flags.enable,r&&!Object.keys(r).length&&delete e.flags.disable,!e.flags.enable&&!e.flags.disable&&delete e.flags},LookaroundAssertion({node:e},t){const{kind:r}=e;r==="lookbehind"&&(t.passedLookbehind=!0)},NamedCallout({node:e,parent:t,replaceWith:r}){const{kind:n}=e;if(n==="fail")r(k(X({negate:!0}),t));else throw new Error(`Unsupported named callout "(*${n.toUpperCase()}"`)},Quantifier({node:e}){if(e.body.type==="Quantifier"){const t=U();t.body[0].body.push(e.body),e.body=k(t,e)}},Regex:{enter({node:e},{supportedGNodes:t}){const r=[];let n=!1,i=!1;for(const s of e.body)if(s.body.length===1&&s.body[0].kind==="search_start")s.body.pop();else{const o=It(s.body);o?(n=!0,Array.isArray(o)?r.push(...o):r.push(o)):i=!0}n&&!i&&r.forEach(s=>t.add(s))},exit(e,{accuracy:t,passedLookbehind:r,strategy:n}){if(t==="strict"&&r&&n)throw new Error(w`Uses "\G" in a way that requires non-strict accuracy`)}},Subroutine({node:e},{jsGroupNameMap:t}){let{ref:r}=e;typeof r=="string"&&!xe(r)&&(r=ke(r,t),e.ref=r)}},zr={Backreference({node:e},{multiplexCapturesToLeftByRef:t,reffedNodesByReferencer:r}){const{orphan:n,ref:i}=e;n||r.set(e,[...t.get(i).map(({node:s})=>s)])},CapturingGroup:{enter({node:e,parent:t,replaceWith:r,skip:n},{groupOriginByCopy:i,groupsByName:s,multiplexCapturesToLeftByRef:o,openRefs:a,reffedNodesByReferencer:u}){const c=i.get(e);if(c&&a.has(e.number)){const l=z(rt(e.number),t);u.set(l,a.get(e.number)),r(l);return}a.set(e.number,e),o.set(e.number,[]),e.name&&ie(o,e.name,[]);const f=o.get(e.name??e.number);for(let l=0;l<f.length;l++){const h=f[l];if(c===h.node||c&&c===h.origin||e===h.origin){f.splice(l,1);break}}if(o.get(e.number).push({node:e,origin:c}),e.name&&o.get(e.name).push({node:e,origin:c}),e.name){const l=ie(s,e.name,new Map);let h=!1;if(c)h=!0;else for(const d of l.values())if(!d.hasDuplicateNameToRemove){h=!0;break}s.get(e.name).set(e,{node:e,hasDuplicateNameToRemove:h})}},exit({node:e},{openRefs:t}){t.delete(e.number)}},Group:{enter({node:e},t){t.prevFlags=t.currentFlags,e.flags&&(t.currentFlags=de(t.currentFlags,e.flags))},exit(e,t){t.currentFlags=t.prevFlags}},Subroutine({node:e,parent:t,replaceWith:r},n){const{isRecursive:i,ref:s}=e;if(i){let f=t;for(;(f=f.parent)&&!(f.type==="CapturingGroup"&&(f.name===s||f.number===s)););n.reffedNodesByReferencer.set(e,f);return}const o=n.subroutineRefMap.get(s),a=s===0,u=a?rt(0):xt(o,n.groupOriginByCopy,null);let c=u;if(!a){const f=vt(Qr(o,h=>h.type==="Group"&&!!h.flags)),l=f?de(n.globalFlags,f):n.globalFlags;Xr(l,n.currentFlags)||(c=U({flags:qr(l)}),c.body[0].body.push(u))}r(k(c,t),{traverse:!a})}},jr={Backreference({node:e,parent:t,replaceWith:r},n){if(e.orphan){n.highestOrphanBackref=Math.max(n.highestOrphanBackref,e.ref);return}const s=n.reffedNodesByReferencer.get(e).filter(o=>Zr(o,e));if(!s.length)r(k(X({negate:!0}),t));else if(s.length>1){const o=U({atomic:!0,body:s.reverse().map(a=>Q({body:[Se(a.number)]}))});r(k(o,t))}else e.ref=s[0].number},CapturingGroup({node:e},t){e.number=++t.numCapturesToLeft,e.name&&t.groupsByName.get(e.name).get(e).hasDuplicateNameToRemove&&delete e.name},Regex:{exit({node:e},t){const r=Math.max(t.highestOrphanBackref-t.numCapturesToLeft,0);for(let n=0;n<r;n++){const i=ht();e.body.at(-1).body.push(i)}}},Subroutine({node:e},t){!e.isRecursive||e.ref===0||(e.ref=t.reffedNodesByReferencer.get(e).number)}};function kt(e){se(e,{"*"({node:t,parent:r}){t.parent=r}})}function Xr(e,t){return e.dotAll===t.dotAll&&e.ignoreCase===t.ignoreCase}function Zr(e,t){let r=t;do{if(r.type==="Regex")return!1;if(r.type==="Alternative")continue;if(r===e)return!1;const n=$t(r.parent);for(const i of n){if(i===r)break;if(i===e||St(i,e))return!0}}while(r=r.parent);throw new Error("Unexpected path")}function xt(e,t,r,n){const i=Array.isArray(e)?[]:{};for(const[s,o]of Object.entries(e))s==="parent"?i.parent=Array.isArray(r)?n:r:o&&typeof o=="object"?i[s]=xt(o,t,i,r):(s==="type"&&o==="CapturingGroup"&&t.set(i,t.get(e)??e),i[s]=o);return i}function rt(e){const t=mt(e);return t.isRecursive=!0,t}function Qr(e,t){const r=[];for(;e=e.parent;)(!t||t(e))&&r.push(e);return r}function ke(e,t){if(t.has(e))return t.get(e);const r=`$${t.size}_${e.replace(/^[^$_\p{IDS}]|[^$\u200C\u200D\p{IDC}]/ug,"_")}`;return t.set(e,r),r}function vt(e){const t=["dotAll","ignoreCase"],r={enable:{},disable:{}};return e.forEach(({flags:n})=>{t.forEach(i=>{n.enable?.[i]&&(delete r.disable[i],r.enable[i]=!0),n.disable?.[i]&&(r.disable[i]=!0)})}),Object.keys(r.enable).length||delete r.enable,Object.keys(r.disable).length||delete r.disable,r.enable||r.disable?r:null}function qr({dotAll:e,ignoreCase:t}){const r={};return(e||t)&&(r.enable={},e&&(r.enable.dotAll=!0),t&&(r.enable.ignoreCase=!0)),(!e||!t)&&(r.disable={},!e&&(r.disable.dotAll=!0),!t&&(r.disable.ignoreCase=!0)),r}function $t(e){if(!e)throw new Error("Node expected");const{body:t}=e;return Array.isArray(t)?t:t?[t]:null}function It(e){const t=e.find(r=>r.kind==="search_start"||Yr(r,{negate:!1})||!Jr(r));if(!t)return null;if(t.kind==="search_start")return t;if(t.type==="LookaroundAssertion")return t.body[0].body[0];if(t.type==="CapturingGroup"||t.type==="Group"){const r=[];for(const n of t.body){const i=It(n.body);if(!i)return null;Array.isArray(i)?r.push(...i):r.push(i)}return r}return null}function St(e,t){const r=$t(e)??[];for(const n of r)if(n===t||St(n,t))return!0;return!1}function Jr({type:e}){return e==="Assertion"||e==="Directive"||e==="LookaroundAssertion"}function Kr(e){const t=["Character","CharacterClass","CharacterSet"];return t.includes(e.type)||e.type==="Quantifier"&&e.min&&t.includes(e.body.type)}function Yr(e,t){const r={negate:null,...t};return e.type==="LookaroundAssertion"&&(r.negate===null||e.negate===r.negate)&&e.body.length===1&&pt(e.body[0],{type:"Assertion",kind:"search_start"})}function xe(e){return/^[$_\p{IDS}][$\u200C\u200D\p{IDC}]*$/u.test(e)}function G(e,t){const n=dt(e,{...t,unicodePropertyMap:Ue}).body;return n.length>1||n[0].body.length>1?U({body:n}):n[0].body[0]}function ve(e,t){return e.negate=t,e}function z(e,t){return e.parent=t,e}function k(e,t){return kt(e),e.parent=t,e}function en(e,t){const r=Ct(t),n=Te(r.target,"ES2024"),i=Te(r.target,"ES2025"),s=r.rules.recursionLimit;if(!Number.isInteger(s)||s<2||s>20)throw new Error("Invalid recursionLimit; use 2-20");let o=null,a=null;if(!i){const d=[e.flags.ignoreCase];se(e,tn,{getCurrentModI:()=>d.at(-1),popModI(){d.pop()},pushModI(p){d.push(p)},setHasCasedChar(){d.at(-1)?o=!0:a=!0}})}const u={dotAll:e.flags.dotAll,ignoreCase:!!((e.flags.ignoreCase||o)&&!a)};let c=e;const f={accuracy:r.accuracy,appliedGlobalFlags:u,captureMap:new Map,currentFlags:{dotAll:e.flags.dotAll,ignoreCase:e.flags.ignoreCase},inCharClass:!1,lastNode:c,originMap:e._originMap,recursionLimit:s,useAppliedIgnoreCase:!!(!i&&o&&a),useFlagMods:i,useFlagV:n,verbose:r.verbose};function l(d){return f.lastNode=c,c=d,Mr(rn[d.type],`Unexpected node type "${d.type}"`)(d,f,l)}const h={pattern:e.body.map(l).join("|"),flags:l(e.flags),options:{...e.options}};return n||(delete h.options.force.v,h.options.disable.v=!0,h.options.unicodeSetsPlugin=null),h._captureTransfers=new Map,h._hiddenCaptures=[],f.captureMap.forEach((d,p)=>{d.hidden&&h._hiddenCaptures.push(p),d.transferTo&&ie(h._captureTransfers,d.transferTo,[]).push(p)}),h}var tn={"*":{enter({node:e},t){if(st(e)){const r=t.getCurrentModI();t.pushModI(e.flags?de({ignoreCase:r},e.flags).ignoreCase:r)}},exit({node:e},t){st(e)&&t.popModI()}},Backreference(e,t){t.setHasCasedChar()},Character({node:e},t){De(v(e.value))&&t.setHasCasedChar()},CharacterClassRange({node:e,skip:t},r){t(),Lt(e,{firstOnly:!0}).length&&r.setHasCasedChar()},CharacterSet({node:e},t){e.kind==="property"&&At.has(e.value)&&t.setHasCasedChar()}},rn={Alternative({body:e},t,r){return e.map(r).join("")},Assertion({kind:e,negate:t}){if(e==="string_end")return"$";if(e==="string_start")return"^";if(e==="word_boundary")return t?w`\B`:w`\b`;throw new Error(`Unexpected assertion kind "${e}"`)},Backreference({ref:e},t){if(typeof e!="number")throw new Error("Unexpected named backref in transformed AST");if(!t.useFlagMods&&t.accuracy==="strict"&&t.currentFlags.ignoreCase&&!t.captureMap.get(e).ignoreCase)throw new Error("Use of case-insensitive backref to case-sensitive group requires target ES2025 or non-strict accuracy");return"\\"+e},CapturingGroup(e,t,r){const{body:n,name:i,number:s}=e,o={ignoreCase:t.currentFlags.ignoreCase},a=t.originMap.get(e);return a&&(o.hidden=!0,s>a.number&&(o.transferTo=a.number)),t.captureMap.set(s,o),`(${i?`?<${i}>`:""}${n.map(r).join("|")})`},Character({value:e},t){const r=v(e),n=K(e,{escDigit:t.lastNode.type==="Backreference",inCharClass:t.inCharClass,useFlagV:t.useFlagV});if(n!==r)return n;if(t.useAppliedIgnoreCase&&t.currentFlags.ignoreCase&&De(r)){const i=Et(r);return t.inCharClass?i.join(""):i.length>1?`[${i.join("")}]`:i[0]}return r},CharacterClass(e,t,r){const{kind:n,negate:i,parent:s}=e;let{body:o}=e;if(n==="intersection"&&!t.useFlagV)throw new Error("Use of character class intersection requires min target ES2024");B.bugFlagVLiteralHyphenIsRange&&t.useFlagV&&o.some(it)&&(o=[he(45),...o.filter(c=>!it(c))]);const a=()=>`[${i?"^":""}${o.map(r).join(n==="intersection"?"&&":"")}]`;if(!t.inCharClass){if((!t.useFlagV||B.bugNestedClassIgnoresNegation)&&!i){const f=o.filter(l=>l.type==="CharacterClass"&&l.kind==="union"&&l.negate);if(f.length){const l=U(),h=l.body[0];return l.parent=s,h.parent=l,o=o.filter(d=>!f.includes(d)),e.body=o,o.length?(e.parent=h,h.body.push(e)):l.body.pop(),f.forEach(d=>{const p=Q({body:[d]});d.parent=p,p.parent=l,l.body.push(p)}),r(l)}}t.inCharClass=!0;const c=a();return t.inCharClass=!1,c}const u=o[0];if(n==="union"&&!i&&u&&((!t.useFlagV||!t.verbose)&&s.kind==="union"&&!(B.bugFlagVLiteralHyphenIsRange&&t.useFlagV)||!t.verbose&&s.kind==="intersection"&&o.length===1&&u.type!=="CharacterClassRange"))return o.map(r).join("");if(!t.useFlagV&&s.type==="CharacterClass")throw new Error("Uses nested character class in a way that requires min target ES2024");return a()},CharacterClassRange(e,t){const r=e.min.value,n=e.max.value,i={escDigit:!1,inCharClass:!0,useFlagV:t.useFlagV},s=K(r,i),o=K(n,i),a=new Set;if(t.useAppliedIgnoreCase&&t.currentFlags.ignoreCase){const u=Lt(e);un(u).forEach(f=>{a.add(Array.isArray(f)?`${K(f[0],i)}-${K(f[1],i)}`:K(f,i))})}return`${s}-${o}${[...a].join("")}`},CharacterSet({kind:e,negate:t,value:r,key:n},i){if(e==="dot")return i.currentFlags.dotAll?i.appliedGlobalFlags.dotAll||i.useFlagMods?".":"[^]":w`[^\n]`;if(e==="digit")return t?w`\D`:w`\d`;if(e==="property"){if(i.useAppliedIgnoreCase&&i.currentFlags.ignoreCase&&At.has(r))throw new Error(`Unicode property "${r}" can't be case-insensitive when other chars have specific case`);return`${t?w`\P`:w`\p`}{${n?`${n}=`:""}${r}}`}if(e==="word")return t?w`\W`:w`\w`;throw new Error(`Unexpected character set kind "${e}"`)},Flags(e,t){return(t.appliedGlobalFlags.ignoreCase?"i":"")+(e.dotAll?"s":"")+(e.sticky?"y":"")},Group({atomic:e,body:t,flags:r,parent:n},i,s){const o=i.currentFlags;r&&(i.currentFlags=de(o,r));const a=t.map(s).join("|"),u=!i.verbose&&t.length===1&&n.type!=="Quantifier"&&!e&&(!i.useFlagMods||!r)?a:`(?${cn(e,r,i.useFlagMods)}${a})`;return i.currentFlags=o,u},LookaroundAssertion({body:e,kind:t,negate:r},n,i){return`(?${`${t==="lookahead"?"":"<"}${r?"!":"="}`}${e.map(i).join("|")})`},Quantifier(e,t,r){return r(e.body)+ln(e)},Subroutine({isRecursive:e,ref:t},r){if(!e)throw new Error("Unexpected non-recursive subroutine in transformed AST");const n=r.recursionLimit;return t===0?`(?R=${n})`:w`\g<${t}&R=${n}>`}},nn=new Set(["$","(",")","*","+",".","?","[","\\","]","^","{","|","}"]),sn=new Set(["-","\\","]","^","["]),on=new Set(["(",")","-","/","[","\\","]","^","{","|","}","!","#","$","%","&","*","+",",",".",":",";","<","=",">","?","@","`","~"]),nt=new Map([[9,w`\t`],[10,w`\n`],[11,w`\v`],[12,w`\f`],[13,w`\r`],[8232,w`\u2028`],[8233,w`\u2029`],[65279,w`\uFEFF`]]),an=new RegExp("^\\p{Cased}$","u");function De(e){return an.test(e)}function Lt(e,t){const r=!!t?.firstOnly,n=e.min.value,i=e.max.value,s=[];if(n<65&&(i===65535||i>=131071)||n===65536&&i>=131071)return s;for(let o=n;o<=i;o++){const a=v(o);if(!De(a))continue;const u=Et(a).filter(c=>{const f=c.codePointAt(0);return f<n||f>i});if(u.length&&(s.push(...u),r))break}return s}function K(e,{escDigit:t,inCharClass:r,useFlagV:n}){if(nt.has(e))return nt.get(e);if(e<32||e>126&&e<160||e>262143||t&&fn(e))return e>255?`\\u{${e.toString(16).toUpperCase()}}`:`\\x${e.toString(16).toUpperCase().padStart(2,"0")}`;const i=r?n?on:sn:nn,s=v(e);return(i.has(s)?"\\":"")+s}function un(e){const t=e.map(i=>i.codePointAt(0)).sort((i,s)=>i-s),r=[];let n=null;for(let i=0;i<t.length;i++)t[i+1]===t[i]+1?n??=t[i]:n===null?r.push(t[i]):(r.push([n,t[i]]),n=null);return r}function cn(e,t,r){if(e)return">";let n="";if(t&&r){const{enable:i,disable:s}=t;n=(i?.ignoreCase?"i":"")+(i?.dotAll?"s":"")+(s?"-":"")+(s?.ignoreCase?"i":"")+(s?.dotAll?"s":"")}return`${n}:`}function ln({kind:e,max:t,min:r}){let n;return!r&&t===1?n="?":!r&&t===1/0?n="*":r===1&&t===1/0?n="+":r===t?n=`{${r}}`:n=`{${r},${t===1/0?"":t}}`,n+{greedy:"",lazy:"?",possessive:"+"}[e]}function st({type:e}){return e==="CapturingGroup"||e==="Group"||e==="LookaroundAssertion"}function fn(e){return e>47&&e<58}function it({type:e,value:t}){return e==="Character"&&t===45}var pn=class Oe extends RegExp{#t=new Map;#e=null;#n;#r=null;#s=null;rawOptions={};get source(){return this.#n||"(?:)"}constructor(t,r,n){const i=!!n?.lazyCompile;if(t instanceof RegExp){if(n)throw new Error("Cannot provide options when copying a regexp");const s=t;super(s,r),this.#n=s.source,s instanceof Oe&&(this.#t=s.#t,this.#r=s.#r,this.#s=s.#s,this.rawOptions=s.rawOptions)}else{const s={hiddenCaptures:[],strategy:null,transfers:[],...n};super(i?"":t,r),this.#n=t,this.#t=hn(s.hiddenCaptures,s.transfers),this.#s=s.strategy,this.rawOptions=n??{}}i||(this.#e=this)}exec(t){if(!this.#e){const{lazyCompile:i,...s}=this.rawOptions;this.#e=new Oe(this.#n,this.flags,s)}const r=this.global||this.sticky,n=this.lastIndex;if(this.#s==="clip_search"&&r&&n){this.lastIndex=0;const i=this.#i(t.slice(n));return i&&(dn(i,n,t,this.hasIndices),this.lastIndex+=n),i}return this.#i(t)}#i(t){this.#e.lastIndex=this.lastIndex;const r=super.exec.call(this.#e,t);if(this.lastIndex=this.#e.lastIndex,!r||!this.#t.size)return r;const n=[...r];r.length=1;let i;this.hasIndices&&(i=[...r.indices],r.indices.length=1);const s=[0];for(let o=1;o<n.length;o++){const{hidden:a,transferTo:u}=this.#t.get(o)??{};if(a?s.push(null):(s.push(r.length),r.push(n[o]),this.hasIndices&&r.indices.push(i[o])),u&&n[o]!==void 0){const c=s[u];if(!c)throw new Error(`Invalid capture transfer to "${c}"`);if(r[c]=n[o],this.hasIndices&&(r.indices[c]=i[o]),r.groups){this.#r||(this.#r=gn(this.source));const f=this.#r.get(u);f&&(r.groups[f]=n[o],this.hasIndices&&(r.indices.groups[f]=i[o]))}}}return r}};function dn(e,t,r,n){if(e.index+=t,e.input=r,n){const i=e.indices;for(let o=0;o<i.length;o++){const a=i[o];a&&(i[o]=[a[0]+t,a[1]+t])}const s=i.groups;s&&Object.keys(s).forEach(o=>{const a=s[o];a&&(s[o]=[a[0]+t,a[1]+t])})}}function hn(e,t){const r=new Map;for(const n of e)r.set(n,{hidden:!0});for(const[n,i]of t)for(const s of i)ie(r,s,{}).transferTo=n;return r}function gn(e){const t=/(?<capture>\((?:\?<(?![=!])(?<name>[^>]+)>|(?!\?)))|\\?./gsu,r=new Map;let n=0,i=0,s;for(;s=t.exec(e);){const{0:o,groups:{capture:a,name:u}}=s;o==="["?n++:n?o==="]"&&n--:a&&(i++,u&&r.set(i,u))}return r}function mn(e,t){const r=wn(e,t);return r.options?new pn(r.pattern,r.flags,r.options):new RegExp(r.pattern,r.flags)}function wn(e,t){const r=Ct(t),n=dt(e,{flags:r.flags,normalizeUnknownPropertyNames:!0,rules:{captureGroup:r.rules.captureGroup,singleline:r.rules.singleline},skipBackrefValidation:r.rules.allowOrphanBackrefs,unicodePropertyMap:Ue}),i=Hr(n,{accuracy:r.accuracy,asciiWordBoundaries:r.rules.asciiWordBoundaries,avoidSubclass:r.avoidSubclass,bestEffortTarget:r.target}),s=en(i,r),o=Tr(s.pattern,{captureTransfers:s._captureTransfers,hiddenCaptures:s._hiddenCaptures,mode:"external"}),a=Lr(o.pattern),u=Sr(a.pattern,{captureTransfers:o.captureTransfers,hiddenCaptures:o.hiddenCaptures}),c={pattern:u.pattern,flags:`${r.hasIndices?"d":""}${r.global?"g":""}${s.flags}${s.options.disable.v?"u":"v"}`};if(r.avoidSubclass){if(r.lazyCompileLength!==1/0)throw new Error("Lazy compilation requires subclass")}else{const f=u.hiddenCaptures.sort((p,m)=>p-m),l=Array.from(u.captureTransfers),h=i._strategy,d=c.pattern.length>=r.lazyCompileLength;(f.length||l.length||h||d)&&(c.options={...f.length&&{hiddenCaptures:f},...l.length&&{transfers:l},...h&&{strategy:h},...d&&{lazyCompile:d}})}return c}const ot=4294967295;class yn{constructor(t,r={}){this.patterns=t,this.options=r;const{forgiving:n=!1,cache:i,regexConstructor:s}=r;if(!s)throw new Error("Option `regexConstructor` is not provided");this.regexps=t.map(o=>{if(typeof o!="string")return o;const a=i?.get(o);if(a){if(a instanceof RegExp)return a;if(n)return null;throw a}try{const u=s(o);return i?.set(o,u),u}catch(u){if(i?.set(o,u),n)return null;throw u}})}regexps;findNextMatchSync(t,r,n){const i=typeof t=="string"?t:t.content,s=[];function o(a,u,c=0){return{index:a,captureIndices:u.indices.map(f=>f==null?{start:ot,end:ot,length:0}:{start:f[0]+c,end:f[1]+c,length:f[1]-f[0]})}}for(let a=0;a<this.regexps.length;a++){const u=this.regexps[a];if(u)try{u.lastIndex=r;const c=u.exec(i);if(!c)continue;if(c.index===r)return o(a,c,0);s.push([a,c,0])}catch(c){if(this.options.forgiving)continue;throw c}}if(s.length){const a=Math.min(...s.map(u=>u[1].index));for(const[u,c,f]of s)if(c.index===a)return o(u,c,f)}return null}}function _n(e,t){return mn(e,{global:!0,hasIndices:!0,lazyCompileLength:3e3,rules:{allowOrphanBackrefs:!0,asciiWordBoundaries:!0,captureGroup:!0,recursionLimit:5,singleline:!0},...t})}function bn(e={}){const t=Object.assign({target:"auto",cache:new Map},e);return t.regexConstructor||=r=>_n(r,{target:t.target}),{createScanner(r){return new yn(r,t)},createString(r){return{content:r}}}}class Fe extends Error{constructor(t){super(t),this.name="ShikiError"}}function Cn(){return 2147483648}function En(){return typeof performance<"u"?performance.now():Date.now()}const An=(e,t)=>e+(t-e%t)%t;async function kn(e){let t,r;const n={};function i(d){r=d,n.HEAPU8=new Uint8Array(d),n.HEAPU32=new Uint32Array(d)}function s(d,p,m){n.HEAPU8.copyWithin(d,p,p+m)}function o(d){try{return t.grow(d-r.byteLength+65535>>>16),i(t.buffer),1}catch{}}function a(d){const p=n.HEAPU8.length;d=d>>>0;const m=Cn();if(d>m)return!1;for(let _=1;_<=4;_*=2){let y=p*(1+.2/_);y=Math.min(y,d+100663296);const E=Math.min(m,An(Math.max(d,y),65536));if(o(E))return!0}return!1}const u=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function c(d,p,m=1024){const _=p+m;let y=p;for(;d[y]&&!(y>=_);)++y;if(y-p>16&&d.buffer&&u)return u.decode(d.subarray(p,y));let E="";for(;p<y;){let C=d[p++];if(!(C&128)){E+=String.fromCharCode(C);continue}const A=d[p++]&63;if((C&224)===192){E+=String.fromCharCode((C&31)<<6|A);continue}const x=d[p++]&63;if((C&240)===224?C=(C&15)<<12|A<<6|x:C=(C&7)<<18|A<<12|x<<6|d[p++]&63,C<65536)E+=String.fromCharCode(C);else{const L=C-65536;E+=String.fromCharCode(55296|L>>10,56320|L&1023)}}return E}function f(d,p){return d?c(n.HEAPU8,d,p):""}const l={emscripten_get_now:En,emscripten_memcpy_big:s,emscripten_resize_heap:a,fd_write:()=>0};async function h(){const p=await e({env:l,wasi_snapshot_preview1:l});t=p.memory,i(t.buffer),Object.assign(n,p),n.UTF8ToString=f}return await h(),n}var xn=Object.defineProperty,vn=(e,t,r)=>t in e?xn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,$=(e,t,r)=>vn(e,typeof t!="symbol"?t+"":t,r);let I=null;function $n(e){throw new Fe(e.UTF8ToString(e.getLastOnigError()))}class we{constructor(t){$(this,"utf16Length"),$(this,"utf8Length"),$(this,"utf16Value"),$(this,"utf8Value"),$(this,"utf16OffsetToUtf8"),$(this,"utf8OffsetToUtf16");const r=t.length,n=we._utf8ByteLength(t),i=n!==r,s=i?new Uint32Array(r+1):null;i&&(s[r]=n);const o=i?new Uint32Array(n+1):null;i&&(o[n]=r);const a=new Uint8Array(n);let u=0;for(let c=0;c<r;c++){const f=t.charCodeAt(c);let l=f,h=!1;if(f>=55296&&f<=56319&&c+1<r){const d=t.charCodeAt(c+1);d>=56320&&d<=57343&&(l=(f-55296<<10)+65536|d-56320,h=!0)}i&&(s[c]=u,h&&(s[c+1]=u),l<=127?o[u+0]=c:l<=2047?(o[u+0]=c,o[u+1]=c):l<=65535?(o[u+0]=c,o[u+1]=c,o[u+2]=c):(o[u+0]=c,o[u+1]=c,o[u+2]=c,o[u+3]=c)),l<=127?a[u++]=l:l<=2047?(a[u++]=192|(l&1984)>>>6,a[u++]=128|(l&63)>>>0):l<=65535?(a[u++]=224|(l&61440)>>>12,a[u++]=128|(l&4032)>>>6,a[u++]=128|(l&63)>>>0):(a[u++]=240|(l&1835008)>>>18,a[u++]=128|(l&258048)>>>12,a[u++]=128|(l&4032)>>>6,a[u++]=128|(l&63)>>>0),h&&c++}this.utf16Length=r,this.utf8Length=n,this.utf16Value=t,this.utf8Value=a,this.utf16OffsetToUtf8=s,this.utf8OffsetToUtf16=o}static _utf8ByteLength(t){let r=0;for(let n=0,i=t.length;n<i;n++){const s=t.charCodeAt(n);let o=s,a=!1;if(s>=55296&&s<=56319&&n+1<i){const u=t.charCodeAt(n+1);u>=56320&&u<=57343&&(o=(s-55296<<10)+65536|u-56320,a=!0)}o<=127?r+=1:o<=2047?r+=2:o<=65535?r+=3:r+=4,a&&n++}return r}createString(t){const r=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,r),r}}const ye=class D{constructor(t){if($(this,"id",++D.LAST_ID),$(this,"_onigBinding"),$(this,"content"),$(this,"utf16Length"),$(this,"utf8Length"),$(this,"utf16OffsetToUtf8"),$(this,"utf8OffsetToUtf16"),$(this,"ptr"),!I)throw new Fe("Must invoke loadWasm first.");this._onigBinding=I,this.content=t;const r=new we(t);this.utf16Length=r.utf16Length,this.utf8Length=r.utf8Length,this.utf16OffsetToUtf8=r.utf16OffsetToUtf8,this.utf8OffsetToUtf16=r.utf8OffsetToUtf16,this.utf8Length<1e4&&!D._sharedPtrInUse?(D._sharedPtr||(D._sharedPtr=I.omalloc(1e4)),D._sharedPtrInUse=!0,I.HEAPU8.set(r.utf8Value,D._sharedPtr),this.ptr=D._sharedPtr):this.ptr=r.createString(I)}convertUtf8OffsetToUtf16(t){return this.utf8OffsetToUtf16?t<0?0:t>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[t]:t}convertUtf16OffsetToUtf8(t){return this.utf16OffsetToUtf8?t<0?0:t>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[t]:t}dispose(){this.ptr===D._sharedPtr?D._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};$(ye,"LAST_ID",0);$(ye,"_sharedPtr",0);$(ye,"_sharedPtrInUse",!1);let Pt=ye;class In{constructor(t){if($(this,"_onigBinding"),$(this,"_ptr"),!I)throw new Fe("Must invoke loadWasm first.");const r=[],n=[];for(let a=0,u=t.length;a<u;a++){const c=new we(t[a]);r[a]=c.createString(I),n[a]=c.utf8Length}const i=I.omalloc(4*t.length);I.HEAPU32.set(r,i/4);const s=I.omalloc(4*t.length);I.HEAPU32.set(n,s/4);const o=I.createOnigScanner(i,s,t.length);for(let a=0,u=t.length;a<u;a++)I.ofree(r[a]);I.ofree(s),I.ofree(i),o===0&&$n(I),this._onigBinding=I,this._ptr=o}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,r,n){let i=0;if(typeof n=="number"&&(i=n),typeof t=="string"){t=new Pt(t);const s=this._findNextMatchSync(t,r,!1,i);return t.dispose(),s}return this._findNextMatchSync(t,r,!1,i)}_findNextMatchSync(t,r,n,i){const s=this._onigBinding,o=s.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(r),i);if(o===0)return null;const a=s.HEAPU32;let u=o/4;const c=a[u++],f=a[u++],l=[];for(let h=0;h<f;h++){const d=t.convertUtf8OffsetToUtf16(a[u++]),p=t.convertUtf8OffsetToUtf16(a[u++]);l[h]={start:d,end:p,length:p-d}}return{index:c,captureIndices:l}}}function Sn(e){return typeof e.instantiator=="function"}function Ln(e){return typeof e.default=="function"}function Pn(e){return typeof e.data<"u"}function Tn(e){return typeof Response<"u"&&e instanceof Response}function On(e){return typeof ArrayBuffer<"u"&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<"u"&&Buffer.isBuffer?.(e)||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer||typeof Uint32Array<"u"&&e instanceof Uint32Array}let fe;function Mn(e){if(fe)return fe;async function t(){I=await kn(async r=>{let n=e;return n=await n,typeof n=="function"&&(n=await n(r)),typeof n=="function"&&(n=await n(r)),Sn(n)?n=await n.instantiator(r):Ln(n)?n=await n.default(r):(Pn(n)&&(n=n.data),Tn(n)?typeof WebAssembly.instantiateStreaming=="function"?n=await Rn(n)(r):n=await Nn(n)(r):On(n)?n=await $e(n)(r):n instanceof WebAssembly.Module?n=await $e(n)(r):"default"in n&&n.default instanceof WebAssembly.Module&&(n=await $e(n.default)(r))),"instance"in n&&(n=n.instance),"exports"in n&&(n=n.exports),n})}return fe=t(),fe}function $e(e){return t=>WebAssembly.instantiate(e,t)}function Rn(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Nn(e){return async t=>{const r=await e.arrayBuffer();return WebAssembly.instantiate(r,t)}}async function Un(e){return e&&await Mn(e),{createScanner(t){return new In(t.map(r=>typeof r=="string"?r:r.source))},createString(t){return new Pt(t)}}}function Dn({langs:e=[],themes:t=[],bundledLangs:r={},bundledThemes:n={},getMdcConfigs:i,options:s,engine:o}={}){let a,u;async function c(){const{createHighlighterCore:d,addClassToHast:p,isSpecialLang:m,isSpecialTheme:_}=await g(async()=>{const{createHighlighterCore:L,addClassToHast:T,isSpecialLang:M,isSpecialTheme:H}=await import("./CDKJK4wW.js");return{createHighlighterCore:L,addClassToHast:T,isSpecialLang:M,isSpecialTheme:H}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9]),import.meta.url),{transformerNotationDiff:y,transformerNotationErrorLevel:E,transformerNotationFocus:C,transformerNotationHighlight:A}=await g(async()=>{const{transformerNotationDiff:L,transformerNotationErrorLevel:T,transformerNotationFocus:M,transformerNotationHighlight:H}=await import("./B5xTLW1Q.js");return{transformerNotationDiff:L,transformerNotationErrorLevel:T,transformerNotationFocus:M,transformerNotationHighlight:H}},[],import.meta.url),x=await d({langs:e,themes:t,engine:o||bn()});for await(const L of await l())await L.shiki?.setup?.(x);return{shiki:x,addClassToHast:p,isSpecialLang:m,isSpecialTheme:_,transformers:[y(),E(),C(),A()]}}async function f(){return a||(a=c()),a}async function l(){return u||(u=Promise.resolve(i?.()||[])),u}return async(d,p,m,_={})=>{const{shiki:y,addClassToHast:E,isSpecialLang:C,isSpecialTheme:A,transformers:x}=await f(),L={defaultColor:!1,meta:{__raw:_.meta}};p==="ts-type"||p==="typescript-type"?(p="typescript",L.grammarContextCode="let a:"):(p==="vue-html"||p==="vue-template")&&(p="vue",L.grammarContextCode="<template>");const T={...typeof m=="string"?{default:m}:m||{}},M=y.getLoadedThemes(),H=y.getLoadedLanguages();typeof p=="string"&&!H.includes(p)&&!C(p)&&(r[p]?await y.loadLanguage(r[p]):p="text");for(const[b,P]of Object.entries(T))typeof P=="string"&&!M.includes(P)&&!A(P)&&(n[P]?await y.loadTheme(n[P]):T[b]="none");const ne=new Map;for(const b of x)ne.set(b.name||`transformer:${Math.random()}-${b.constructor.name}`,b);for(const b of await l()){const P=typeof b.shiki?.transformers=="function"?await b.shiki?.transformers(d,p,m,_):b.shiki?.transformers||[];for(const q of P)ne.set(q.name||`transformer:${Math.random()}-${q.constructor.name}`,q)}const O=y.codeToHast(d.trimEnd(),{lang:p,...L,themes:T,transformers:[...ne.values(),{name:"mdc:highlight",line(b,P){_.highlights?.includes(P)&&E(b,"highlight"),b.properties.line=P}},{name:"mdc:newline",line(b){if(d?.includes(`
142
+ \v\f…\u2028\u2029])`),t));else if(u==="posix")if(!i&&(f==="graph"||f==="print")){if(n==="strict")throw new Error(`POSIX class "${f}" requires min target ES2024 or non-strict accuracy`);let l={graph:"!-~",print:" -~"}[f];c&&(l=`\0-${v(l.codePointAt(0)-1)}${v(l.codePointAt(2)+1)}-􏿿`),r(k(G(`[${l}]`),t))}else r(k(ve(G(Vr.get(f)),c),t));else if(u==="property")Ue.has(ge(f))||(e.key="sc");else if(u==="space")r(z(ee("space",{negate:c}),t));else if(u==="word")r(k(ve(G(F),c),t));else throw new Error(`Unexpected character set kind "${u}"`)},Directive({node:e,parent:t,root:r,remove:n,replaceWith:i,removeAllPrevSiblings:s,removeAllNextSiblings:o}){const{kind:a,flags:u}=e;if(a==="flags")if(!u.enable&&!u.disable)n();else{const c=U({flags:u});c.body[0].body=o(),i(k(c,t),{traverse:!0})}else if(a==="keep"){const c=r.body[0],l=r.body.length===1&&pt(c,{type:"Group"})&&c.body[0].body.length===1?c.body[0]:r;if(t.parent!==l||l.body.length>1)throw new Error(w`Uses "\K" in a way that's unsupported`);const h=X({behind:!0});h.body[0].body=s(),i(k(h,t))}else throw new Error(`Unexpected directive kind "${a}"`)},Flags({node:e,parent:t}){if(e.posixIsAscii)throw new Error('Unsupported flag "P"');if(e.textSegmentMode==="word")throw new Error('Unsupported flag "y{w}"');["digitIsAscii","extended","posixIsAscii","spaceIsAscii","wordIsAscii","textSegmentMode"].forEach(r=>delete e[r]),Object.assign(e,{global:!1,hasIndices:!1,multiline:!1,sticky:e.sticky??!1}),t.options={disable:{x:!0,n:!0},force:{v:!0}}},Group({node:e}){if(!e.flags)return;const{enable:t,disable:r}=e.flags;t?.extended&&delete t.extended,r?.extended&&delete r.extended,t?.dotAll&&r?.dotAll&&delete t.dotAll,t?.ignoreCase&&r?.ignoreCase&&delete t.ignoreCase,t&&!Object.keys(t).length&&delete e.flags.enable,r&&!Object.keys(r).length&&delete e.flags.disable,!e.flags.enable&&!e.flags.disable&&delete e.flags},LookaroundAssertion({node:e},t){const{kind:r}=e;r==="lookbehind"&&(t.passedLookbehind=!0)},NamedCallout({node:e,parent:t,replaceWith:r}){const{kind:n}=e;if(n==="fail")r(k(X({negate:!0}),t));else throw new Error(`Unsupported named callout "(*${n.toUpperCase()}"`)},Quantifier({node:e}){if(e.body.type==="Quantifier"){const t=U();t.body[0].body.push(e.body),e.body=k(t,e)}},Regex:{enter({node:e},{supportedGNodes:t}){const r=[];let n=!1,i=!1;for(const s of e.body)if(s.body.length===1&&s.body[0].kind==="search_start")s.body.pop();else{const o=It(s.body);o?(n=!0,Array.isArray(o)?r.push(...o):r.push(o)):i=!0}n&&!i&&r.forEach(s=>t.add(s))},exit(e,{accuracy:t,passedLookbehind:r,strategy:n}){if(t==="strict"&&r&&n)throw new Error(w`Uses "\G" in a way that requires non-strict accuracy`)}},Subroutine({node:e},{jsGroupNameMap:t}){let{ref:r}=e;typeof r=="string"&&!xe(r)&&(r=ke(r,t),e.ref=r)}},zr={Backreference({node:e},{multiplexCapturesToLeftByRef:t,reffedNodesByReferencer:r}){const{orphan:n,ref:i}=e;n||r.set(e,[...t.get(i).map(({node:s})=>s)])},CapturingGroup:{enter({node:e,parent:t,replaceWith:r,skip:n},{groupOriginByCopy:i,groupsByName:s,multiplexCapturesToLeftByRef:o,openRefs:a,reffedNodesByReferencer:u}){const c=i.get(e);if(c&&a.has(e.number)){const l=z(rt(e.number),t);u.set(l,a.get(e.number)),r(l);return}a.set(e.number,e),o.set(e.number,[]),e.name&&ie(o,e.name,[]);const f=o.get(e.name??e.number);for(let l=0;l<f.length;l++){const h=f[l];if(c===h.node||c&&c===h.origin||e===h.origin){f.splice(l,1);break}}if(o.get(e.number).push({node:e,origin:c}),e.name&&o.get(e.name).push({node:e,origin:c}),e.name){const l=ie(s,e.name,new Map);let h=!1;if(c)h=!0;else for(const d of l.values())if(!d.hasDuplicateNameToRemove){h=!0;break}s.get(e.name).set(e,{node:e,hasDuplicateNameToRemove:h})}},exit({node:e},{openRefs:t}){t.delete(e.number)}},Group:{enter({node:e},t){t.prevFlags=t.currentFlags,e.flags&&(t.currentFlags=de(t.currentFlags,e.flags))},exit(e,t){t.currentFlags=t.prevFlags}},Subroutine({node:e,parent:t,replaceWith:r},n){const{isRecursive:i,ref:s}=e;if(i){let f=t;for(;(f=f.parent)&&!(f.type==="CapturingGroup"&&(f.name===s||f.number===s)););n.reffedNodesByReferencer.set(e,f);return}const o=n.subroutineRefMap.get(s),a=s===0,u=a?rt(0):xt(o,n.groupOriginByCopy,null);let c=u;if(!a){const f=vt(Qr(o,h=>h.type==="Group"&&!!h.flags)),l=f?de(n.globalFlags,f):n.globalFlags;Xr(l,n.currentFlags)||(c=U({flags:qr(l)}),c.body[0].body.push(u))}r(k(c,t),{traverse:!a})}},jr={Backreference({node:e,parent:t,replaceWith:r},n){if(e.orphan){n.highestOrphanBackref=Math.max(n.highestOrphanBackref,e.ref);return}const s=n.reffedNodesByReferencer.get(e).filter(o=>Zr(o,e));if(!s.length)r(k(X({negate:!0}),t));else if(s.length>1){const o=U({atomic:!0,body:s.reverse().map(a=>Q({body:[Se(a.number)]}))});r(k(o,t))}else e.ref=s[0].number},CapturingGroup({node:e},t){e.number=++t.numCapturesToLeft,e.name&&t.groupsByName.get(e.name).get(e).hasDuplicateNameToRemove&&delete e.name},Regex:{exit({node:e},t){const r=Math.max(t.highestOrphanBackref-t.numCapturesToLeft,0);for(let n=0;n<r;n++){const i=ht();e.body.at(-1).body.push(i)}}},Subroutine({node:e},t){!e.isRecursive||e.ref===0||(e.ref=t.reffedNodesByReferencer.get(e).number)}};function kt(e){se(e,{"*"({node:t,parent:r}){t.parent=r}})}function Xr(e,t){return e.dotAll===t.dotAll&&e.ignoreCase===t.ignoreCase}function Zr(e,t){let r=t;do{if(r.type==="Regex")return!1;if(r.type==="Alternative")continue;if(r===e)return!1;const n=$t(r.parent);for(const i of n){if(i===r)break;if(i===e||St(i,e))return!0}}while(r=r.parent);throw new Error("Unexpected path")}function xt(e,t,r,n){const i=Array.isArray(e)?[]:{};for(const[s,o]of Object.entries(e))s==="parent"?i.parent=Array.isArray(r)?n:r:o&&typeof o=="object"?i[s]=xt(o,t,i,r):(s==="type"&&o==="CapturingGroup"&&t.set(i,t.get(e)??e),i[s]=o);return i}function rt(e){const t=mt(e);return t.isRecursive=!0,t}function Qr(e,t){const r=[];for(;e=e.parent;)(!t||t(e))&&r.push(e);return r}function ke(e,t){if(t.has(e))return t.get(e);const r=`$${t.size}_${e.replace(/^[^$_\p{IDS}]|[^$\u200C\u200D\p{IDC}]/ug,"_")}`;return t.set(e,r),r}function vt(e){const t=["dotAll","ignoreCase"],r={enable:{},disable:{}};return e.forEach(({flags:n})=>{t.forEach(i=>{n.enable?.[i]&&(delete r.disable[i],r.enable[i]=!0),n.disable?.[i]&&(r.disable[i]=!0)})}),Object.keys(r.enable).length||delete r.enable,Object.keys(r.disable).length||delete r.disable,r.enable||r.disable?r:null}function qr({dotAll:e,ignoreCase:t}){const r={};return(e||t)&&(r.enable={},e&&(r.enable.dotAll=!0),t&&(r.enable.ignoreCase=!0)),(!e||!t)&&(r.disable={},!e&&(r.disable.dotAll=!0),!t&&(r.disable.ignoreCase=!0)),r}function $t(e){if(!e)throw new Error("Node expected");const{body:t}=e;return Array.isArray(t)?t:t?[t]:null}function It(e){const t=e.find(r=>r.kind==="search_start"||Yr(r,{negate:!1})||!Jr(r));if(!t)return null;if(t.kind==="search_start")return t;if(t.type==="LookaroundAssertion")return t.body[0].body[0];if(t.type==="CapturingGroup"||t.type==="Group"){const r=[];for(const n of t.body){const i=It(n.body);if(!i)return null;Array.isArray(i)?r.push(...i):r.push(i)}return r}return null}function St(e,t){const r=$t(e)??[];for(const n of r)if(n===t||St(n,t))return!0;return!1}function Jr({type:e}){return e==="Assertion"||e==="Directive"||e==="LookaroundAssertion"}function Kr(e){const t=["Character","CharacterClass","CharacterSet"];return t.includes(e.type)||e.type==="Quantifier"&&e.min&&t.includes(e.body.type)}function Yr(e,t){const r={negate:null,...t};return e.type==="LookaroundAssertion"&&(r.negate===null||e.negate===r.negate)&&e.body.length===1&&pt(e.body[0],{type:"Assertion",kind:"search_start"})}function xe(e){return/^[$_\p{IDS}][$\u200C\u200D\p{IDC}]*$/u.test(e)}function G(e,t){const n=dt(e,{...t,unicodePropertyMap:Ue}).body;return n.length>1||n[0].body.length>1?U({body:n}):n[0].body[0]}function ve(e,t){return e.negate=t,e}function z(e,t){return e.parent=t,e}function k(e,t){return kt(e),e.parent=t,e}function en(e,t){const r=Ct(t),n=Te(r.target,"ES2024"),i=Te(r.target,"ES2025"),s=r.rules.recursionLimit;if(!Number.isInteger(s)||s<2||s>20)throw new Error("Invalid recursionLimit; use 2-20");let o=null,a=null;if(!i){const d=[e.flags.ignoreCase];se(e,tn,{getCurrentModI:()=>d.at(-1),popModI(){d.pop()},pushModI(p){d.push(p)},setHasCasedChar(){d.at(-1)?o=!0:a=!0}})}const u={dotAll:e.flags.dotAll,ignoreCase:!!((e.flags.ignoreCase||o)&&!a)};let c=e;const f={accuracy:r.accuracy,appliedGlobalFlags:u,captureMap:new Map,currentFlags:{dotAll:e.flags.dotAll,ignoreCase:e.flags.ignoreCase},inCharClass:!1,lastNode:c,originMap:e._originMap,recursionLimit:s,useAppliedIgnoreCase:!!(!i&&o&&a),useFlagMods:i,useFlagV:n,verbose:r.verbose};function l(d){return f.lastNode=c,c=d,Mr(rn[d.type],`Unexpected node type "${d.type}"`)(d,f,l)}const h={pattern:e.body.map(l).join("|"),flags:l(e.flags),options:{...e.options}};return n||(delete h.options.force.v,h.options.disable.v=!0,h.options.unicodeSetsPlugin=null),h._captureTransfers=new Map,h._hiddenCaptures=[],f.captureMap.forEach((d,p)=>{d.hidden&&h._hiddenCaptures.push(p),d.transferTo&&ie(h._captureTransfers,d.transferTo,[]).push(p)}),h}var tn={"*":{enter({node:e},t){if(st(e)){const r=t.getCurrentModI();t.pushModI(e.flags?de({ignoreCase:r},e.flags).ignoreCase:r)}},exit({node:e},t){st(e)&&t.popModI()}},Backreference(e,t){t.setHasCasedChar()},Character({node:e},t){De(v(e.value))&&t.setHasCasedChar()},CharacterClassRange({node:e,skip:t},r){t(),Lt(e,{firstOnly:!0}).length&&r.setHasCasedChar()},CharacterSet({node:e},t){e.kind==="property"&&At.has(e.value)&&t.setHasCasedChar()}},rn={Alternative({body:e},t,r){return e.map(r).join("")},Assertion({kind:e,negate:t}){if(e==="string_end")return"$";if(e==="string_start")return"^";if(e==="word_boundary")return t?w`\B`:w`\b`;throw new Error(`Unexpected assertion kind "${e}"`)},Backreference({ref:e},t){if(typeof e!="number")throw new Error("Unexpected named backref in transformed AST");if(!t.useFlagMods&&t.accuracy==="strict"&&t.currentFlags.ignoreCase&&!t.captureMap.get(e).ignoreCase)throw new Error("Use of case-insensitive backref to case-sensitive group requires target ES2025 or non-strict accuracy");return"\\"+e},CapturingGroup(e,t,r){const{body:n,name:i,number:s}=e,o={ignoreCase:t.currentFlags.ignoreCase},a=t.originMap.get(e);return a&&(o.hidden=!0,s>a.number&&(o.transferTo=a.number)),t.captureMap.set(s,o),`(${i?`?<${i}>`:""}${n.map(r).join("|")})`},Character({value:e},t){const r=v(e),n=K(e,{escDigit:t.lastNode.type==="Backreference",inCharClass:t.inCharClass,useFlagV:t.useFlagV});if(n!==r)return n;if(t.useAppliedIgnoreCase&&t.currentFlags.ignoreCase&&De(r)){const i=Et(r);return t.inCharClass?i.join(""):i.length>1?`[${i.join("")}]`:i[0]}return r},CharacterClass(e,t,r){const{kind:n,negate:i,parent:s}=e;let{body:o}=e;if(n==="intersection"&&!t.useFlagV)throw new Error("Use of character class intersection requires min target ES2024");B.bugFlagVLiteralHyphenIsRange&&t.useFlagV&&o.some(it)&&(o=[he(45),...o.filter(c=>!it(c))]);const a=()=>`[${i?"^":""}${o.map(r).join(n==="intersection"?"&&":"")}]`;if(!t.inCharClass){if((!t.useFlagV||B.bugNestedClassIgnoresNegation)&&!i){const f=o.filter(l=>l.type==="CharacterClass"&&l.kind==="union"&&l.negate);if(f.length){const l=U(),h=l.body[0];return l.parent=s,h.parent=l,o=o.filter(d=>!f.includes(d)),e.body=o,o.length?(e.parent=h,h.body.push(e)):l.body.pop(),f.forEach(d=>{const p=Q({body:[d]});d.parent=p,p.parent=l,l.body.push(p)}),r(l)}}t.inCharClass=!0;const c=a();return t.inCharClass=!1,c}const u=o[0];if(n==="union"&&!i&&u&&((!t.useFlagV||!t.verbose)&&s.kind==="union"&&!(B.bugFlagVLiteralHyphenIsRange&&t.useFlagV)||!t.verbose&&s.kind==="intersection"&&o.length===1&&u.type!=="CharacterClassRange"))return o.map(r).join("");if(!t.useFlagV&&s.type==="CharacterClass")throw new Error("Uses nested character class in a way that requires min target ES2024");return a()},CharacterClassRange(e,t){const r=e.min.value,n=e.max.value,i={escDigit:!1,inCharClass:!0,useFlagV:t.useFlagV},s=K(r,i),o=K(n,i),a=new Set;if(t.useAppliedIgnoreCase&&t.currentFlags.ignoreCase){const u=Lt(e);un(u).forEach(f=>{a.add(Array.isArray(f)?`${K(f[0],i)}-${K(f[1],i)}`:K(f,i))})}return`${s}-${o}${[...a].join("")}`},CharacterSet({kind:e,negate:t,value:r,key:n},i){if(e==="dot")return i.currentFlags.dotAll?i.appliedGlobalFlags.dotAll||i.useFlagMods?".":"[^]":w`[^\n]`;if(e==="digit")return t?w`\D`:w`\d`;if(e==="property"){if(i.useAppliedIgnoreCase&&i.currentFlags.ignoreCase&&At.has(r))throw new Error(`Unicode property "${r}" can't be case-insensitive when other chars have specific case`);return`${t?w`\P`:w`\p`}{${n?`${n}=`:""}${r}}`}if(e==="word")return t?w`\W`:w`\w`;throw new Error(`Unexpected character set kind "${e}"`)},Flags(e,t){return(t.appliedGlobalFlags.ignoreCase?"i":"")+(e.dotAll?"s":"")+(e.sticky?"y":"")},Group({atomic:e,body:t,flags:r,parent:n},i,s){const o=i.currentFlags;r&&(i.currentFlags=de(o,r));const a=t.map(s).join("|"),u=!i.verbose&&t.length===1&&n.type!=="Quantifier"&&!e&&(!i.useFlagMods||!r)?a:`(?${cn(e,r,i.useFlagMods)}${a})`;return i.currentFlags=o,u},LookaroundAssertion({body:e,kind:t,negate:r},n,i){return`(?${`${t==="lookahead"?"":"<"}${r?"!":"="}`}${e.map(i).join("|")})`},Quantifier(e,t,r){return r(e.body)+ln(e)},Subroutine({isRecursive:e,ref:t},r){if(!e)throw new Error("Unexpected non-recursive subroutine in transformed AST");const n=r.recursionLimit;return t===0?`(?R=${n})`:w`\g<${t}&R=${n}>`}},nn=new Set(["$","(",")","*","+",".","?","[","\\","]","^","{","|","}"]),sn=new Set(["-","\\","]","^","["]),on=new Set(["(",")","-","/","[","\\","]","^","{","|","}","!","#","$","%","&","*","+",",",".",":",";","<","=",">","?","@","`","~"]),nt=new Map([[9,w`\t`],[10,w`\n`],[11,w`\v`],[12,w`\f`],[13,w`\r`],[8232,w`\u2028`],[8233,w`\u2029`],[65279,w`\uFEFF`]]),an=new RegExp("^\\p{Cased}$","u");function De(e){return an.test(e)}function Lt(e,t){const r=!!t?.firstOnly,n=e.min.value,i=e.max.value,s=[];if(n<65&&(i===65535||i>=131071)||n===65536&&i>=131071)return s;for(let o=n;o<=i;o++){const a=v(o);if(!De(a))continue;const u=Et(a).filter(c=>{const f=c.codePointAt(0);return f<n||f>i});if(u.length&&(s.push(...u),r))break}return s}function K(e,{escDigit:t,inCharClass:r,useFlagV:n}){if(nt.has(e))return nt.get(e);if(e<32||e>126&&e<160||e>262143||t&&fn(e))return e>255?`\\u{${e.toString(16).toUpperCase()}}`:`\\x${e.toString(16).toUpperCase().padStart(2,"0")}`;const i=r?n?on:sn:nn,s=v(e);return(i.has(s)?"\\":"")+s}function un(e){const t=e.map(i=>i.codePointAt(0)).sort((i,s)=>i-s),r=[];let n=null;for(let i=0;i<t.length;i++)t[i+1]===t[i]+1?n??=t[i]:n===null?r.push(t[i]):(r.push([n,t[i]]),n=null);return r}function cn(e,t,r){if(e)return">";let n="";if(t&&r){const{enable:i,disable:s}=t;n=(i?.ignoreCase?"i":"")+(i?.dotAll?"s":"")+(s?"-":"")+(s?.ignoreCase?"i":"")+(s?.dotAll?"s":"")}return`${n}:`}function ln({kind:e,max:t,min:r}){let n;return!r&&t===1?n="?":!r&&t===1/0?n="*":r===1&&t===1/0?n="+":r===t?n=`{${r}}`:n=`{${r},${t===1/0?"":t}}`,n+{greedy:"",lazy:"?",possessive:"+"}[e]}function st({type:e}){return e==="CapturingGroup"||e==="Group"||e==="LookaroundAssertion"}function fn(e){return e>47&&e<58}function it({type:e,value:t}){return e==="Character"&&t===45}var pn=class Oe extends RegExp{#t=new Map;#e=null;#n;#r=null;#s=null;rawOptions={};get source(){return this.#n||"(?:)"}constructor(t,r,n){const i=!!n?.lazyCompile;if(t instanceof RegExp){if(n)throw new Error("Cannot provide options when copying a regexp");const s=t;super(s,r),this.#n=s.source,s instanceof Oe&&(this.#t=s.#t,this.#r=s.#r,this.#s=s.#s,this.rawOptions=s.rawOptions)}else{const s={hiddenCaptures:[],strategy:null,transfers:[],...n};super(i?"":t,r),this.#n=t,this.#t=hn(s.hiddenCaptures,s.transfers),this.#s=s.strategy,this.rawOptions=n??{}}i||(this.#e=this)}exec(t){if(!this.#e){const{lazyCompile:i,...s}=this.rawOptions;this.#e=new Oe(this.#n,this.flags,s)}const r=this.global||this.sticky,n=this.lastIndex;if(this.#s==="clip_search"&&r&&n){this.lastIndex=0;const i=this.#i(t.slice(n));return i&&(dn(i,n,t,this.hasIndices),this.lastIndex+=n),i}return this.#i(t)}#i(t){this.#e.lastIndex=this.lastIndex;const r=super.exec.call(this.#e,t);if(this.lastIndex=this.#e.lastIndex,!r||!this.#t.size)return r;const n=[...r];r.length=1;let i;this.hasIndices&&(i=[...r.indices],r.indices.length=1);const s=[0];for(let o=1;o<n.length;o++){const{hidden:a,transferTo:u}=this.#t.get(o)??{};if(a?s.push(null):(s.push(r.length),r.push(n[o]),this.hasIndices&&r.indices.push(i[o])),u&&n[o]!==void 0){const c=s[u];if(!c)throw new Error(`Invalid capture transfer to "${c}"`);if(r[c]=n[o],this.hasIndices&&(r.indices[c]=i[o]),r.groups){this.#r||(this.#r=gn(this.source));const f=this.#r.get(u);f&&(r.groups[f]=n[o],this.hasIndices&&(r.indices.groups[f]=i[o]))}}}return r}};function dn(e,t,r,n){if(e.index+=t,e.input=r,n){const i=e.indices;for(let o=0;o<i.length;o++){const a=i[o];a&&(i[o]=[a[0]+t,a[1]+t])}const s=i.groups;s&&Object.keys(s).forEach(o=>{const a=s[o];a&&(s[o]=[a[0]+t,a[1]+t])})}}function hn(e,t){const r=new Map;for(const n of e)r.set(n,{hidden:!0});for(const[n,i]of t)for(const s of i)ie(r,s,{}).transferTo=n;return r}function gn(e){const t=/(?<capture>\((?:\?<(?![=!])(?<name>[^>]+)>|(?!\?)))|\\?./gsu,r=new Map;let n=0,i=0,s;for(;s=t.exec(e);){const{0:o,groups:{capture:a,name:u}}=s;o==="["?n++:n?o==="]"&&n--:a&&(i++,u&&r.set(i,u))}return r}function mn(e,t){const r=wn(e,t);return r.options?new pn(r.pattern,r.flags,r.options):new RegExp(r.pattern,r.flags)}function wn(e,t){const r=Ct(t),n=dt(e,{flags:r.flags,normalizeUnknownPropertyNames:!0,rules:{captureGroup:r.rules.captureGroup,singleline:r.rules.singleline},skipBackrefValidation:r.rules.allowOrphanBackrefs,unicodePropertyMap:Ue}),i=Hr(n,{accuracy:r.accuracy,asciiWordBoundaries:r.rules.asciiWordBoundaries,avoidSubclass:r.avoidSubclass,bestEffortTarget:r.target}),s=en(i,r),o=Tr(s.pattern,{captureTransfers:s._captureTransfers,hiddenCaptures:s._hiddenCaptures,mode:"external"}),a=Lr(o.pattern),u=Sr(a.pattern,{captureTransfers:o.captureTransfers,hiddenCaptures:o.hiddenCaptures}),c={pattern:u.pattern,flags:`${r.hasIndices?"d":""}${r.global?"g":""}${s.flags}${s.options.disable.v?"u":"v"}`};if(r.avoidSubclass){if(r.lazyCompileLength!==1/0)throw new Error("Lazy compilation requires subclass")}else{const f=u.hiddenCaptures.sort((p,m)=>p-m),l=Array.from(u.captureTransfers),h=i._strategy,d=c.pattern.length>=r.lazyCompileLength;(f.length||l.length||h||d)&&(c.options={...f.length&&{hiddenCaptures:f},...l.length&&{transfers:l},...h&&{strategy:h},...d&&{lazyCompile:d}})}return c}const ot=4294967295;class yn{constructor(t,r={}){this.patterns=t,this.options=r;const{forgiving:n=!1,cache:i,regexConstructor:s}=r;if(!s)throw new Error("Option `regexConstructor` is not provided");this.regexps=t.map(o=>{if(typeof o!="string")return o;const a=i?.get(o);if(a){if(a instanceof RegExp)return a;if(n)return null;throw a}try{const u=s(o);return i?.set(o,u),u}catch(u){if(i?.set(o,u),n)return null;throw u}})}regexps;findNextMatchSync(t,r,n){const i=typeof t=="string"?t:t.content,s=[];function o(a,u,c=0){return{index:a,captureIndices:u.indices.map(f=>f==null?{start:ot,end:ot,length:0}:{start:f[0]+c,end:f[1]+c,length:f[1]-f[0]})}}for(let a=0;a<this.regexps.length;a++){const u=this.regexps[a];if(u)try{u.lastIndex=r;const c=u.exec(i);if(!c)continue;if(c.index===r)return o(a,c,0);s.push([a,c,0])}catch(c){if(this.options.forgiving)continue;throw c}}if(s.length){const a=Math.min(...s.map(u=>u[1].index));for(const[u,c,f]of s)if(c.index===a)return o(u,c,f)}return null}}function _n(e,t){return mn(e,{global:!0,hasIndices:!0,lazyCompileLength:3e3,rules:{allowOrphanBackrefs:!0,asciiWordBoundaries:!0,captureGroup:!0,recursionLimit:5,singleline:!0},...t})}function bn(e={}){const t=Object.assign({target:"auto",cache:new Map},e);return t.regexConstructor||=r=>_n(r,{target:t.target}),{createScanner(r){return new yn(r,t)},createString(r){return{content:r}}}}class Fe extends Error{constructor(t){super(t),this.name="ShikiError"}}function Cn(){return 2147483648}function En(){return typeof performance<"u"?performance.now():Date.now()}const An=(e,t)=>e+(t-e%t)%t;async function kn(e){let t,r;const n={};function i(d){r=d,n.HEAPU8=new Uint8Array(d),n.HEAPU32=new Uint32Array(d)}function s(d,p,m){n.HEAPU8.copyWithin(d,p,p+m)}function o(d){try{return t.grow(d-r.byteLength+65535>>>16),i(t.buffer),1}catch{}}function a(d){const p=n.HEAPU8.length;d=d>>>0;const m=Cn();if(d>m)return!1;for(let _=1;_<=4;_*=2){let y=p*(1+.2/_);y=Math.min(y,d+100663296);const E=Math.min(m,An(Math.max(d,y),65536));if(o(E))return!0}return!1}const u=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function c(d,p,m=1024){const _=p+m;let y=p;for(;d[y]&&!(y>=_);)++y;if(y-p>16&&d.buffer&&u)return u.decode(d.subarray(p,y));let E="";for(;p<y;){let C=d[p++];if(!(C&128)){E+=String.fromCharCode(C);continue}const A=d[p++]&63;if((C&224)===192){E+=String.fromCharCode((C&31)<<6|A);continue}const x=d[p++]&63;if((C&240)===224?C=(C&15)<<12|A<<6|x:C=(C&7)<<18|A<<12|x<<6|d[p++]&63,C<65536)E+=String.fromCharCode(C);else{const L=C-65536;E+=String.fromCharCode(55296|L>>10,56320|L&1023)}}return E}function f(d,p){return d?c(n.HEAPU8,d,p):""}const l={emscripten_get_now:En,emscripten_memcpy_big:s,emscripten_resize_heap:a,fd_write:()=>0};async function h(){const p=await e({env:l,wasi_snapshot_preview1:l});t=p.memory,i(t.buffer),Object.assign(n,p),n.UTF8ToString=f}return await h(),n}var xn=Object.defineProperty,vn=(e,t,r)=>t in e?xn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,$=(e,t,r)=>vn(e,typeof t!="symbol"?t+"":t,r);let I=null;function $n(e){throw new Fe(e.UTF8ToString(e.getLastOnigError()))}class we{constructor(t){$(this,"utf16Length"),$(this,"utf8Length"),$(this,"utf16Value"),$(this,"utf8Value"),$(this,"utf16OffsetToUtf8"),$(this,"utf8OffsetToUtf16");const r=t.length,n=we._utf8ByteLength(t),i=n!==r,s=i?new Uint32Array(r+1):null;i&&(s[r]=n);const o=i?new Uint32Array(n+1):null;i&&(o[n]=r);const a=new Uint8Array(n);let u=0;for(let c=0;c<r;c++){const f=t.charCodeAt(c);let l=f,h=!1;if(f>=55296&&f<=56319&&c+1<r){const d=t.charCodeAt(c+1);d>=56320&&d<=57343&&(l=(f-55296<<10)+65536|d-56320,h=!0)}i&&(s[c]=u,h&&(s[c+1]=u),l<=127?o[u+0]=c:l<=2047?(o[u+0]=c,o[u+1]=c):l<=65535?(o[u+0]=c,o[u+1]=c,o[u+2]=c):(o[u+0]=c,o[u+1]=c,o[u+2]=c,o[u+3]=c)),l<=127?a[u++]=l:l<=2047?(a[u++]=192|(l&1984)>>>6,a[u++]=128|(l&63)>>>0):l<=65535?(a[u++]=224|(l&61440)>>>12,a[u++]=128|(l&4032)>>>6,a[u++]=128|(l&63)>>>0):(a[u++]=240|(l&1835008)>>>18,a[u++]=128|(l&258048)>>>12,a[u++]=128|(l&4032)>>>6,a[u++]=128|(l&63)>>>0),h&&c++}this.utf16Length=r,this.utf8Length=n,this.utf16Value=t,this.utf8Value=a,this.utf16OffsetToUtf8=s,this.utf8OffsetToUtf16=o}static _utf8ByteLength(t){let r=0;for(let n=0,i=t.length;n<i;n++){const s=t.charCodeAt(n);let o=s,a=!1;if(s>=55296&&s<=56319&&n+1<i){const u=t.charCodeAt(n+1);u>=56320&&u<=57343&&(o=(s-55296<<10)+65536|u-56320,a=!0)}o<=127?r+=1:o<=2047?r+=2:o<=65535?r+=3:r+=4,a&&n++}return r}createString(t){const r=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,r),r}}const ye=class D{constructor(t){if($(this,"id",++D.LAST_ID),$(this,"_onigBinding"),$(this,"content"),$(this,"utf16Length"),$(this,"utf8Length"),$(this,"utf16OffsetToUtf8"),$(this,"utf8OffsetToUtf16"),$(this,"ptr"),!I)throw new Fe("Must invoke loadWasm first.");this._onigBinding=I,this.content=t;const r=new we(t);this.utf16Length=r.utf16Length,this.utf8Length=r.utf8Length,this.utf16OffsetToUtf8=r.utf16OffsetToUtf8,this.utf8OffsetToUtf16=r.utf8OffsetToUtf16,this.utf8Length<1e4&&!D._sharedPtrInUse?(D._sharedPtr||(D._sharedPtr=I.omalloc(1e4)),D._sharedPtrInUse=!0,I.HEAPU8.set(r.utf8Value,D._sharedPtr),this.ptr=D._sharedPtr):this.ptr=r.createString(I)}convertUtf8OffsetToUtf16(t){return this.utf8OffsetToUtf16?t<0?0:t>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[t]:t}convertUtf16OffsetToUtf8(t){return this.utf16OffsetToUtf8?t<0?0:t>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[t]:t}dispose(){this.ptr===D._sharedPtr?D._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};$(ye,"LAST_ID",0);$(ye,"_sharedPtr",0);$(ye,"_sharedPtrInUse",!1);let Pt=ye;class In{constructor(t){if($(this,"_onigBinding"),$(this,"_ptr"),!I)throw new Fe("Must invoke loadWasm first.");const r=[],n=[];for(let a=0,u=t.length;a<u;a++){const c=new we(t[a]);r[a]=c.createString(I),n[a]=c.utf8Length}const i=I.omalloc(4*t.length);I.HEAPU32.set(r,i/4);const s=I.omalloc(4*t.length);I.HEAPU32.set(n,s/4);const o=I.createOnigScanner(i,s,t.length);for(let a=0,u=t.length;a<u;a++)I.ofree(r[a]);I.ofree(s),I.ofree(i),o===0&&$n(I),this._onigBinding=I,this._ptr=o}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,r,n){let i=0;if(typeof n=="number"&&(i=n),typeof t=="string"){t=new Pt(t);const s=this._findNextMatchSync(t,r,!1,i);return t.dispose(),s}return this._findNextMatchSync(t,r,!1,i)}_findNextMatchSync(t,r,n,i){const s=this._onigBinding,o=s.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(r),i);if(o===0)return null;const a=s.HEAPU32;let u=o/4;const c=a[u++],f=a[u++],l=[];for(let h=0;h<f;h++){const d=t.convertUtf8OffsetToUtf16(a[u++]),p=t.convertUtf8OffsetToUtf16(a[u++]);l[h]={start:d,end:p,length:p-d}}return{index:c,captureIndices:l}}}function Sn(e){return typeof e.instantiator=="function"}function Ln(e){return typeof e.default=="function"}function Pn(e){return typeof e.data<"u"}function Tn(e){return typeof Response<"u"&&e instanceof Response}function On(e){return typeof ArrayBuffer<"u"&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<"u"&&Buffer.isBuffer?.(e)||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer||typeof Uint32Array<"u"&&e instanceof Uint32Array}let fe;function Mn(e){if(fe)return fe;async function t(){I=await kn(async r=>{let n=e;return n=await n,typeof n=="function"&&(n=await n(r)),typeof n=="function"&&(n=await n(r)),Sn(n)?n=await n.instantiator(r):Ln(n)?n=await n.default(r):(Pn(n)&&(n=n.data),Tn(n)?typeof WebAssembly.instantiateStreaming=="function"?n=await Rn(n)(r):n=await Nn(n)(r):On(n)?n=await $e(n)(r):n instanceof WebAssembly.Module?n=await $e(n)(r):"default"in n&&n.default instanceof WebAssembly.Module&&(n=await $e(n.default)(r))),"instance"in n&&(n=n.instance),"exports"in n&&(n=n.exports),n})}return fe=t(),fe}function $e(e){return t=>WebAssembly.instantiate(e,t)}function Rn(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Nn(e){return async t=>{const r=await e.arrayBuffer();return WebAssembly.instantiate(r,t)}}async function Un(e){return e&&await Mn(e),{createScanner(t){return new In(t.map(r=>typeof r=="string"?r:r.source))},createString(t){return new Pt(t)}}}function Dn({langs:e=[],themes:t=[],bundledLangs:r={},bundledThemes:n={},getMdcConfigs:i,options:s,engine:o}={}){let a,u;async function c(){const{createHighlighterCore:d,addClassToHast:p,isSpecialLang:m,isSpecialTheme:_}=await g(async()=>{const{createHighlighterCore:L,addClassToHast:T,isSpecialLang:M,isSpecialTheme:H}=await import("./DKd2_wBj.js");return{createHighlighterCore:L,addClassToHast:T,isSpecialLang:M,isSpecialTheme:H}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9]),import.meta.url),{transformerNotationDiff:y,transformerNotationErrorLevel:E,transformerNotationFocus:C,transformerNotationHighlight:A}=await g(async()=>{const{transformerNotationDiff:L,transformerNotationErrorLevel:T,transformerNotationFocus:M,transformerNotationHighlight:H}=await import("./B5xTLW1Q.js");return{transformerNotationDiff:L,transformerNotationErrorLevel:T,transformerNotationFocus:M,transformerNotationHighlight:H}},[],import.meta.url),x=await d({langs:e,themes:t,engine:o||bn()});for await(const L of await l())await L.shiki?.setup?.(x);return{shiki:x,addClassToHast:p,isSpecialLang:m,isSpecialTheme:_,transformers:[y(),E(),C(),A()]}}async function f(){return a||(a=c()),a}async function l(){return u||(u=Promise.resolve(i?.()||[])),u}return async(d,p,m,_={})=>{const{shiki:y,addClassToHast:E,isSpecialLang:C,isSpecialTheme:A,transformers:x}=await f(),L={defaultColor:!1,meta:{__raw:_.meta}};p==="ts-type"||p==="typescript-type"?(p="typescript",L.grammarContextCode="let a:"):(p==="vue-html"||p==="vue-template")&&(p="vue",L.grammarContextCode="<template>");const T={...typeof m=="string"?{default:m}:m||{}},M=y.getLoadedThemes(),H=y.getLoadedLanguages();typeof p=="string"&&!H.includes(p)&&!C(p)&&(r[p]?await y.loadLanguage(r[p]):p="text");for(const[b,P]of Object.entries(T))typeof P=="string"&&!M.includes(P)&&!A(P)&&(n[P]?await y.loadTheme(n[P]):T[b]="none");const ne=new Map;for(const b of x)ne.set(b.name||`transformer:${Math.random()}-${b.constructor.name}`,b);for(const b of await l()){const P=typeof b.shiki?.transformers=="function"?await b.shiki?.transformers(d,p,m,_):b.shiki?.transformers||[];for(const q of P)ne.set(q.name||`transformer:${Math.random()}-${q.constructor.name}`,q)}const O=y.codeToHast(d.trimEnd(),{lang:p,...L,themes:T,transformers:[...ne.values(),{name:"mdc:highlight",line(b,P){_.highlights?.includes(P)&&E(b,"highlight"),b.properties.line=P}},{name:"mdc:newline",line(b){if(d?.includes(`
143
143
  `)){if(b.children.length===0||b.children.length===1&&b.children[0].type==="element"&&b.children[0].children.length===1&&b.children[0].children[0].type==="text"&&b.children[0].children[0].value===""){b.children=[{type:"element",tagName:"span",properties:{emptyLinePlaceholder:!0},children:[{type:"text",value:`
144
144
  `}]}];return}const P=b.children.at(-1);if(P?.type==="element"&&P.tagName==="span"){const q=P.children.at(-1);q?.type==="text"&&(q.value+=`
145
145
  `)}}}}]}).children[0],Tt=O.children[0],ae=s?.wrapperStyle;O.properties.style=ae?typeof ae=="string"?ae:O.properties.style:"";const _e=[];return Object.keys(T).forEach(b=>{const P=b!=="default"?`.${b}`:"";_e.push(ae?`${P} .shiki,`:"",`html .${b} .shiki span {`,`color: var(--shiki-${b});`,`background: var(--shiki-${b}-bg);`,`font-style: var(--shiki-${b}-font-style);`,`font-weight: var(--shiki-${b}-font-weight);`,`text-decoration: var(--shiki-${b}-text-decoration);`,"}"),_e.push(`html${P} .shiki span {`,`color: var(--shiki-${b});`,`background: var(--shiki-${b}-bg);`,`font-style: var(--shiki-${b}-font-style);`,`font-weight: var(--shiki-${b}-font-weight);`,`text-decoration: var(--shiki-${b}-text-decoration);`,"}")}),{tree:Tt.children,className:Array.isArray(O.properties.class)?O.properties.class.join(" "):O.properties.class,inlineStyle:O.properties.style,style:_e.join("")}}}const Fn={typescript:()=>g(()=>import("./BPQ3VLAy.js"),[],import.meta.url).then(e=>e.default||e),ts:()=>g(()=>import("./BPQ3VLAy.js"),[],import.meta.url).then(e=>e.default||e),cts:()=>g(()=>import("./BPQ3VLAy.js"),[],import.meta.url).then(e=>e.default||e),mts:()=>g(()=>import("./BPQ3VLAy.js"),[],import.meta.url).then(e=>e.default||e),javascript:()=>g(()=>import("./wDzz0qaB.js"),[],import.meta.url).then(e=>e.default||e),js:()=>g(()=>import("./wDzz0qaB.js"),[],import.meta.url).then(e=>e.default||e),cjs:()=>g(()=>import("./wDzz0qaB.js"),[],import.meta.url).then(e=>e.default||e),mjs:()=>g(()=>import("./wDzz0qaB.js"),[],import.meta.url).then(e=>e.default||e),shellscript:()=>g(()=>import("./Yzrsuije.js"),[],import.meta.url).then(e=>e.default||e),bash:()=>g(()=>import("./Yzrsuije.js"),[],import.meta.url).then(e=>e.default||e),sh:()=>g(()=>import("./Yzrsuije.js"),[],import.meta.url).then(e=>e.default||e),shell:()=>g(()=>import("./Yzrsuije.js"),[],import.meta.url).then(e=>e.default||e),zsh:()=>g(()=>import("./Yzrsuije.js"),[],import.meta.url).then(e=>e.default||e),vue:()=>g(()=>import("./BCNkgdIP.js"),__vite__mapDeps([10,11,12,13,14,15]),import.meta.url).then(e=>e.default||e),html:()=>g(()=>import("./CnnebwVN.js"),__vite__mapDeps([15,12,11]),import.meta.url).then(e=>e.default||e),css:()=>g(()=>import("./DPfMkruS.js"),[],import.meta.url).then(e=>e.default||e),scss:()=>g(()=>import("./2EtD6e53.js"),__vite__mapDeps([16,11]),import.meta.url).then(e=>e.default||e),json:()=>g(()=>import("./Cp-IABpG.js"),[],import.meta.url).then(e=>e.default||e),yaml:()=>g(()=>import("./Buea-lGh.js"),[],import.meta.url).then(e=>e.default||e),yml:()=>g(()=>import("./Buea-lGh.js"),[],import.meta.url).then(e=>e.default||e),toml:()=>g(()=>import("./vGWfd6FD.js"),[],import.meta.url).then(e=>e.default||e),xml:()=>g(()=>import("./BGJmEYvX.js"),__vite__mapDeps([17,18]),import.meta.url).then(e=>e.default||e),markdown:()=>g(()=>import("./Cvjx9yec.js"),[],import.meta.url).then(e=>e.default||e),md:()=>g(()=>import("./Cvjx9yec.js"),[],import.meta.url).then(e=>e.default||e),sql:()=>g(()=>import("./BLtJtn59.js"),[],import.meta.url).then(e=>e.default||e),graphql:()=>g(()=>import("./D3fng9L2.js"),__vite__mapDeps([19,12,13]),import.meta.url).then(e=>e.default||e),gql:()=>g(()=>import("./D3fng9L2.js"),__vite__mapDeps([19,12,13]),import.meta.url).then(e=>e.default||e),python:()=>g(()=>import("./B6aJPvgy.js"),[],import.meta.url).then(e=>e.default||e),py:()=>g(()=>import("./B6aJPvgy.js"),[],import.meta.url).then(e=>e.default||e),go:()=>g(()=>import("./Dn2_MT6a.js"),[],import.meta.url).then(e=>e.default||e),rust:()=>g(()=>import("./B1yitclQ.js"),[],import.meta.url).then(e=>e.default||e),rs:()=>g(()=>import("./B1yitclQ.js"),[],import.meta.url).then(e=>e.default||e),c:()=>g(()=>import("./BIGW1oBm.js"),[],import.meta.url).then(e=>e.default||e),cpp:()=>g(()=>import("./Ck_RvX-X.js"),__vite__mapDeps([20,21,22]),import.meta.url).then(e=>e.default||e),"c++":()=>g(()=>import("./Ck_RvX-X.js"),__vite__mapDeps([20,21,22]),import.meta.url).then(e=>e.default||e),csharp:()=>g(()=>import("./K5feNrxe.js"),[],import.meta.url).then(e=>e.default||e),"c#":()=>g(()=>import("./K5feNrxe.js"),[],import.meta.url).then(e=>e.default||e),cs:()=>g(()=>import("./K5feNrxe.js"),[],import.meta.url).then(e=>e.default||e),java:()=>g(()=>import("./CylS5w8V.js"),[],import.meta.url).then(e=>e.default||e),docker:()=>g(()=>import("./BcOcwvcX.js"),[],import.meta.url).then(e=>e.default||e),dockerfile:()=>g(()=>import("./BcOcwvcX.js"),[],import.meta.url).then(e=>e.default||e),diff:()=>g(()=>import("./D97Zzqfu.js"),[],import.meta.url).then(e=>e.default||e),kotlin:()=>g(()=>import("./BdnUsdx6.js"),[],import.meta.url).then(e=>e.default||e),kt:()=>g(()=>import("./BdnUsdx6.js"),[],import.meta.url).then(e=>e.default||e),kts:()=>g(()=>import("./BdnUsdx6.js"),[],import.meta.url).then(e=>e.default||e)},Gn={"material-theme-lighter":()=>g(()=>import("./B0m2ddpp.js"),[],import.meta.url).then(e=>e.default||e),"github-light":()=>g(()=>import("./DAi9KRSo.js"),[],import.meta.url).then(e=>e.default||e),"github-dark":()=>g(()=>import("./DHJKELXO.js"),[],import.meta.url).then(e=>e.default||e)},Vn={},Bn=Un(()=>g(()=>import("./CG6Dc4jp.js"),[],import.meta.url)),zn=Dn({bundledLangs:Fn,bundledThemes:Gn,options:Vn,getMdcConfigs:Ot,engine:Bn});export{Dn as createShikiHighlighter,zn as default};
@@ -0,0 +1 @@
1
+ import"./B06CcGVK.js";const s=globalThis.setInterval;export{s};
@@ -1 +1 @@
1
- import{aq as $,W as T,aA as _,aB as C,h as P,ap as p,e as K,c as o,o as s,w as d,Z as y,M as v,aa as g,a as r,$ as c,r as u,al as x,am as m,_ as M,az as N,m as f,a1 as z,ab as k,af as w}from"./CGgHmnnS.js";import{T as E,a as F,b as H,c as L,d as O}from"./Bk_mzzQ3.js";import{_ as R}from"./NNQizITf.js";const j={slots:{root:"flex items-center gap-2",list:"relative flex p-1 group",indicator:"absolute transition-[translate,width] duration-200",trigger:["group relative inline-flex items-center min-w-0 data-[state=inactive]:text-muted hover:data-[state=inactive]:not-disabled:text-default font-medium rounded-md disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leadingIcon:"shrink-0",leadingAvatar:"shrink-0",leadingAvatarSize:"",label:"truncate",trailingBadge:"shrink-0",trailingBadgeSize:"sm",content:"focus:outline-none w-full"},variants:{color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},variant:{pill:{list:"bg-elevated rounded-lg",trigger:"grow",indicator:"rounded-md shadow-xs"},link:{list:"border-default",indicator:"rounded-full",trigger:"focus:outline-none"}},orientation:{horizontal:{root:"flex-col",list:"w-full",indicator:"left-0 w-(--reka-tabs-indicator-size) translate-x-(--reka-tabs-indicator-position)",trigger:"justify-center"},vertical:{list:"flex-col",indicator:"top-0 h-(--reka-tabs-indicator-size) translate-y-(--reka-tabs-indicator-position)"}},size:{xs:{trigger:"px-2 py-1 text-xs gap-1",leadingIcon:"size-4",leadingAvatarSize:"3xs"},sm:{trigger:"px-2.5 py-1.5 text-xs gap-1.5",leadingIcon:"size-4",leadingAvatarSize:"3xs"},md:{trigger:"px-3 py-1.5 text-sm gap-1.5",leadingIcon:"size-5",leadingAvatarSize:"2xs"},lg:{trigger:"px-3 py-2 text-sm gap-2",leadingIcon:"size-5",leadingAvatarSize:"2xs"},xl:{trigger:"px-3 py-2 text-base gap-2",leadingIcon:"size-6",leadingAvatarSize:"xs"}}},compoundVariants:[{orientation:"horizontal",variant:"pill",class:{indicator:"inset-y-1"}},{orientation:"horizontal",variant:"link",class:{list:"border-b -mb-px",indicator:"-bottom-px h-px"}},{orientation:"vertical",variant:"pill",class:{indicator:"inset-x-1",list:"items-center"}},{orientation:"vertical",variant:"link",class:{list:"border-s -ms-px",indicator:"-start-px w-px"}},{color:"primary",variant:"pill",class:{indicator:"bg-primary",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-primary"}},{color:"secondary",variant:"pill",class:{indicator:"bg-secondary",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-secondary"}},{color:"success",variant:"pill",class:{indicator:"bg-success",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-success"}},{color:"info",variant:"pill",class:{indicator:"bg-info",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-info"}},{color:"warning",variant:"pill",class:{indicator:"bg-warning",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-warning"}},{color:"error",variant:"pill",class:{indicator:"bg-error",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-error"}},{color:"neutral",variant:"pill",class:{indicator:"bg-inverted",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-inverted"}},{color:"primary",variant:"link",class:{indicator:"bg-primary",trigger:"data-[state=active]:text-primary focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary"}},{color:"secondary",variant:"link",class:{indicator:"bg-secondary",trigger:"data-[state=active]:text-secondary focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-secondary"}},{color:"success",variant:"link",class:{indicator:"bg-success",trigger:"data-[state=active]:text-success focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-success"}},{color:"info",variant:"link",class:{indicator:"bg-info",trigger:"data-[state=active]:text-info focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-info"}},{color:"warning",variant:"link",class:{indicator:"bg-warning",trigger:"data-[state=active]:text-warning focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-warning"}},{color:"error",variant:"link",class:{indicator:"bg-error",trigger:"data-[state=active]:text-error focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-error"}},{color:"neutral",variant:"link",class:{indicator:"bg-inverted",trigger:"data-[state=active]:text-highlighted focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-inverted"}}],defaultVariants:{color:"primary",variant:"pill",size:"md"}},G={__name:"UTabs",props:{as:{type:null,required:!1},items:{type:Array,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},orientation:{type:null,required:!1,default:"horizontal"},content:{type:Boolean,required:!1,default:!0},labelKey:{type:null,required:!1,default:"label"},class:{type:null,required:!1},ui:{type:null,required:!1},defaultValue:{type:null,required:!1,default:"0"},modelValue:{type:null,required:!1},activationMode:{type:String,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0}},emits:["update:modelValue"],setup(l,{expose:h,emit:S}){const a=l,A=S,q=$(),B=T(),I=_(C(a,"as","unmountOnHide"),A),i=P(()=>p({extend:p(j),...B.ui?.tabs||{}})({color:a.color,variant:a.variant,size:a.size,orientation:a.orientation})),b=K([]);return h({triggersRef:b}),(n,D)=>(s(),o(r(O),f(r(I),{"model-value":l.modelValue,"default-value":l.defaultValue,orientation:l.orientation,"activation-mode":l.activationMode,"data-slot":"root",class:i.value.root({class:[a.ui?.root,a.class]})}),{default:d(()=>[y(r(E),{"data-slot":"list",class:c(i.value.list({class:a.ui?.list}))},{default:d(()=>[y(r(F),{"data-slot":"indicator",class:c(i.value.indicator({class:a.ui?.indicator}))},null,8,["class"]),u(n.$slots,"list-leading"),(s(!0),v(x,null,m(l.items,(e,t)=>(s(),o(r(H),{key:t,ref_for:!0,ref:V=>b.value[t]=V,value:e.value??String(t),disabled:e.disabled,"data-slot":"trigger",class:c(i.value.trigger({class:[a.ui?.trigger,e.ui?.trigger]}))},{default:d(()=>[u(n.$slots,"leading",{item:e,index:t,ui:i.value},()=>[e.icon?(s(),o(M,{key:0,name:e.icon,"data-slot":"leadingIcon",class:c(i.value.leadingIcon({class:[a.ui?.leadingIcon,e.ui?.leadingIcon]}))},null,8,["name","class"])):e.avatar?(s(),o(N,f({key:1,size:e.ui?.leadingAvatarSize||a.ui?.leadingAvatarSize||i.value.leadingAvatarSize()},{ref_for:!0},e.avatar,{"data-slot":"leadingAvatar",class:i.value.leadingAvatar({class:[a.ui?.leadingAvatar,e.ui?.leadingAvatar]})}),null,16,["size","class"])):g("",!0)]),r(z)(e,a.labelKey)||q.default?(s(),v("span",{key:0,"data-slot":"label",class:c(i.value.label({class:[a.ui?.label,e.ui?.label]}))},[u(n.$slots,"default",{item:e,index:t},()=>[k(w(r(z)(e,a.labelKey)),1)])],2)):g("",!0),u(n.$slots,"trailing",{item:e,index:t,ui:i.value},()=>[e.badge||e.badge===0?(s(),o(R,f({key:0,color:"neutral",variant:"outline",size:e.ui?.trailingBadgeSize||a.ui?.trailingBadgeSize||i.value.trailingBadgeSize()},{ref_for:!0},typeof e.badge=="string"||typeof e.badge=="number"?{label:e.badge}:e.badge,{"data-slot":"trailingBadge",class:i.value.trailingBadge({class:[a.ui?.trailingBadge,e.ui?.trailingBadge]})}),null,16,["size","class"])):g("",!0)])]),_:2},1032,["value","disabled","class"]))),128)),u(n.$slots,"list-trailing")]),_:3},8,["class"]),l.content?(s(!0),v(x,{key:0},m(l.items,(e,t)=>(s(),o(r(L),{key:t,value:e.value??String(t),"data-slot":"content",class:c(i.value.content({class:[a.ui?.content,e.ui?.content,e.class]}))},{default:d(()=>[u(n.$slots,e.slot||"content",{item:e,index:t,ui:i.value},()=>[k(w(e.content),1)])]),_:2},1032,["value","class"]))),128)):g("",!0)]),_:3},16,["model-value","default-value","orientation","activation-mode","class"]))}};export{G as _};
1
+ import{aq as $,W as T,aA as _,aB as C,h as P,ap as p,e as K,c as o,o as s,w as d,Z as y,M as v,aa as g,a as r,$ as c,r as u,al as x,am as m,_ as M,az as N,m as f,a1 as z,ab as k,af as w}from"./B06CcGVK.js";import{T as E,a as F,b as H,c as L,d as O}from"./CBpuaar1.js";import{_ as R}from"./CGTQGJ_c.js";const j={slots:{root:"flex items-center gap-2",list:"relative flex p-1 group",indicator:"absolute transition-[translate,width] duration-200",trigger:["group relative inline-flex items-center min-w-0 data-[state=inactive]:text-muted hover:data-[state=inactive]:not-disabled:text-default font-medium rounded-md disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leadingIcon:"shrink-0",leadingAvatar:"shrink-0",leadingAvatarSize:"",label:"truncate",trailingBadge:"shrink-0",trailingBadgeSize:"sm",content:"focus:outline-none w-full"},variants:{color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},variant:{pill:{list:"bg-elevated rounded-lg",trigger:"grow",indicator:"rounded-md shadow-xs"},link:{list:"border-default",indicator:"rounded-full",trigger:"focus:outline-none"}},orientation:{horizontal:{root:"flex-col",list:"w-full",indicator:"left-0 w-(--reka-tabs-indicator-size) translate-x-(--reka-tabs-indicator-position)",trigger:"justify-center"},vertical:{list:"flex-col",indicator:"top-0 h-(--reka-tabs-indicator-size) translate-y-(--reka-tabs-indicator-position)"}},size:{xs:{trigger:"px-2 py-1 text-xs gap-1",leadingIcon:"size-4",leadingAvatarSize:"3xs"},sm:{trigger:"px-2.5 py-1.5 text-xs gap-1.5",leadingIcon:"size-4",leadingAvatarSize:"3xs"},md:{trigger:"px-3 py-1.5 text-sm gap-1.5",leadingIcon:"size-5",leadingAvatarSize:"2xs"},lg:{trigger:"px-3 py-2 text-sm gap-2",leadingIcon:"size-5",leadingAvatarSize:"2xs"},xl:{trigger:"px-3 py-2 text-base gap-2",leadingIcon:"size-6",leadingAvatarSize:"xs"}}},compoundVariants:[{orientation:"horizontal",variant:"pill",class:{indicator:"inset-y-1"}},{orientation:"horizontal",variant:"link",class:{list:"border-b -mb-px",indicator:"-bottom-px h-px"}},{orientation:"vertical",variant:"pill",class:{indicator:"inset-x-1",list:"items-center"}},{orientation:"vertical",variant:"link",class:{list:"border-s -ms-px",indicator:"-start-px w-px"}},{color:"primary",variant:"pill",class:{indicator:"bg-primary",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-primary"}},{color:"secondary",variant:"pill",class:{indicator:"bg-secondary",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-secondary"}},{color:"success",variant:"pill",class:{indicator:"bg-success",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-success"}},{color:"info",variant:"pill",class:{indicator:"bg-info",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-info"}},{color:"warning",variant:"pill",class:{indicator:"bg-warning",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-warning"}},{color:"error",variant:"pill",class:{indicator:"bg-error",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-error"}},{color:"neutral",variant:"pill",class:{indicator:"bg-inverted",trigger:"data-[state=active]:text-inverted focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-inverted"}},{color:"primary",variant:"link",class:{indicator:"bg-primary",trigger:"data-[state=active]:text-primary focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary"}},{color:"secondary",variant:"link",class:{indicator:"bg-secondary",trigger:"data-[state=active]:text-secondary focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-secondary"}},{color:"success",variant:"link",class:{indicator:"bg-success",trigger:"data-[state=active]:text-success focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-success"}},{color:"info",variant:"link",class:{indicator:"bg-info",trigger:"data-[state=active]:text-info focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-info"}},{color:"warning",variant:"link",class:{indicator:"bg-warning",trigger:"data-[state=active]:text-warning focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-warning"}},{color:"error",variant:"link",class:{indicator:"bg-error",trigger:"data-[state=active]:text-error focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-error"}},{color:"neutral",variant:"link",class:{indicator:"bg-inverted",trigger:"data-[state=active]:text-highlighted focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-inverted"}}],defaultVariants:{color:"primary",variant:"pill",size:"md"}},G={__name:"UTabs",props:{as:{type:null,required:!1},items:{type:Array,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},orientation:{type:null,required:!1,default:"horizontal"},content:{type:Boolean,required:!1,default:!0},labelKey:{type:null,required:!1,default:"label"},class:{type:null,required:!1},ui:{type:null,required:!1},defaultValue:{type:null,required:!1,default:"0"},modelValue:{type:null,required:!1},activationMode:{type:String,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0}},emits:["update:modelValue"],setup(l,{expose:h,emit:S}){const a=l,A=S,q=$(),B=T(),I=_(C(a,"as","unmountOnHide"),A),i=P(()=>p({extend:p(j),...B.ui?.tabs||{}})({color:a.color,variant:a.variant,size:a.size,orientation:a.orientation})),b=K([]);return h({triggersRef:b}),(n,D)=>(s(),o(r(O),f(r(I),{"model-value":l.modelValue,"default-value":l.defaultValue,orientation:l.orientation,"activation-mode":l.activationMode,"data-slot":"root",class:i.value.root({class:[a.ui?.root,a.class]})}),{default:d(()=>[y(r(E),{"data-slot":"list",class:c(i.value.list({class:a.ui?.list}))},{default:d(()=>[y(r(F),{"data-slot":"indicator",class:c(i.value.indicator({class:a.ui?.indicator}))},null,8,["class"]),u(n.$slots,"list-leading"),(s(!0),v(x,null,m(l.items,(e,t)=>(s(),o(r(H),{key:t,ref_for:!0,ref:V=>b.value[t]=V,value:e.value??String(t),disabled:e.disabled,"data-slot":"trigger",class:c(i.value.trigger({class:[a.ui?.trigger,e.ui?.trigger]}))},{default:d(()=>[u(n.$slots,"leading",{item:e,index:t,ui:i.value},()=>[e.icon?(s(),o(M,{key:0,name:e.icon,"data-slot":"leadingIcon",class:c(i.value.leadingIcon({class:[a.ui?.leadingIcon,e.ui?.leadingIcon]}))},null,8,["name","class"])):e.avatar?(s(),o(N,f({key:1,size:e.ui?.leadingAvatarSize||a.ui?.leadingAvatarSize||i.value.leadingAvatarSize()},{ref_for:!0},e.avatar,{"data-slot":"leadingAvatar",class:i.value.leadingAvatar({class:[a.ui?.leadingAvatar,e.ui?.leadingAvatar]})}),null,16,["size","class"])):g("",!0)]),r(z)(e,a.labelKey)||q.default?(s(),v("span",{key:0,"data-slot":"label",class:c(i.value.label({class:[a.ui?.label,e.ui?.label]}))},[u(n.$slots,"default",{item:e,index:t},()=>[k(w(r(z)(e,a.labelKey)),1)])],2)):g("",!0),u(n.$slots,"trailing",{item:e,index:t,ui:i.value},()=>[e.badge||e.badge===0?(s(),o(R,f({key:0,color:"neutral",variant:"outline",size:e.ui?.trailingBadgeSize||a.ui?.trailingBadgeSize||i.value.trailingBadgeSize()},{ref_for:!0},typeof e.badge=="string"||typeof e.badge=="number"?{label:e.badge}:e.badge,{"data-slot":"trailingBadge",class:i.value.trailingBadge({class:[a.ui?.trailingBadge,e.ui?.trailingBadge]})}),null,16,["size","class"])):g("",!0)])]),_:2},1032,["value","disabled","class"]))),128)),u(n.$slots,"list-trailing")]),_:3},8,["class"]),l.content?(s(!0),v(x,{key:0},m(l.items,(e,t)=>(s(),o(r(L),{key:t,value:e.value??String(t),"data-slot":"content",class:c(i.value.content({class:[a.ui?.content,e.ui?.content,e.class]}))},{default:d(()=>[u(n.$slots,e.slot||"content",{item:e,index:t,ui:i.value},()=>[k(w(e.content),1)])]),_:2},1032,["value","class"]))),128)):g("",!0)]),_:3},16,["model-value","default-value","orientation","activation-mode","class"]))}};export{G as _};
@@ -1 +1 @@
1
- import{_ as Q,a as X}from"./81-iumfM.js";import{_ as Y}from"./B8fLdQfp.js";import{d as E,aj as I,h as D,e as b,M as N,o as u,Z as n,w as o,ac as d,ao as ee,c as g,_ as K,a as t,af as B,bm as W,ak as T,a0 as L,ab as w,aa as z,C as A,a5 as te,f as Z,ah as le,bh as oe,al as ne,am as ae,ag as se}from"./CGgHmnnS.js";import{_ as ie,a as re}from"./D4wS6gzr.js";import{_ as q}from"./Ehiy7Wkv.js";import{_ as de}from"./B3TXSB_R.js";import{_ as G}from"./CCmSsj4q.js";import{_ as H}from"./NNQizITf.js";import{_ as ue}from"./D5AjrkGO.js";import{a as ce}from"./B8na0pik.js";import{_ as me}from"./1_nO5SO6.js";import{_ as fe}from"./BGV4_re9.js";import"./CZ5B974o.js";import"./pFPRVtL-.js";import"./CD6r4z4e.js";import"./Dfi2mj_-.js";import"./Cwdn7ZtG.js";import"./Suor9Vto.js";import"./d85YwuyC.js";import"./Cj3gDP-y.js";import"./B1ea1Zc2.js";import"./6k0gxaWW.js";import"./iVfmia7K.js";import"./By5L5Smf.js";import"./C4Ii8cYC.js";import"./DIMnGgEU.js";import"./CZQeFnOf.js";import"./C6Y-ieo6.js";import"./B02JOKtW.js";import"./DEmzTuCa.js";import"./ByXbV9Xa.js";import"./D57E8FC4.js";import"./rVZcJ6Pz.js";import"./CPb6IrVT.js";import"./CNB4wNeh.js";import"./P3qGksT8.js";import"./Vcq4gwWv.js";const pe={class:"h-full flex flex-col"},_e={key:0,class:"h-full min-h-32 flex flex-col items-center justify-center text-dimmed text-sm"},ve=["onContextmenu"],ye={class:"truncate"},ke={class:"flex items-center gap-2"},xe={class:"flex justify-end gap-2"},he={class:"flex items-center gap-2"},$e={class:"flex justify-end gap-2"},ge={class:"flex items-center gap-2 text-error"},be={key:0,class:"text-sm text-dimmed mt-1"},we={class:"flex justify-end gap-2"},Ce=E({__name:"FileTree",props:{skillName:{},files:{},selectedPath:{}},emits:["select","refresh"],setup(U,{emit:P}){const p=U,$=P,m=I();function l(y,e=""){return y.map(s=>{const S=e?`${e}/${s.path}`:s.path,C={id:S,label:s.name,path:S,type:s.type,defaultExpanded:!0};return s.type==="directory"?C.children=s.children?l(s.children,S):[]:s.name.endsWith(".py")?C.icon="i-lucide-file-code":s.name.endsWith(".md")?C.icon="i-lucide-file-text":s.name.endsWith(".json")?C.icon="i-lucide-file-json":C.icon="i-lucide-file",C})}const k=D(()=>l(p.files)),i=b(null),x=b(!1),_=b(!1),c=b(!1),f=b(""),j=D(()=>[[{label:"New File",icon:"i-lucide-file-plus",onSelect:()=>{f.value="",x.value=!0}},{label:"New Folder",icon:"i-lucide-folder-plus",onSelect:()=>{f.value="",_.value=!0}}],[{label:"Delete",icon:"i-lucide-trash-2",color:"error",onSelect:()=>{i.value&&i.value.label!=="SKILL.md"&&(c.value=!0)}}]]);function h(y,e){e.type==="file"&&$("select",e.path)}async function a(){if(!f.value.trim())return;let y=f.value.trim();y.includes(".")||(y+=".py");const e=i.value?.type==="directory"?i.value.path:"",s=e?`${e}/${y}`:y;try{await $fetch(`/api/skills/${p.skillName}/files/create`,{method:"POST",body:{path:s,type:"file"}}),$("refresh"),$("select",s),m.add({title:`Created ${y}`,color:"success"})}catch{m.add({title:"Failed to create file",color:"error"})}x.value=!1,f.value=""}async function v(){if(!f.value.trim())return;const y=f.value.trim(),e=i.value?.type==="directory"?i.value.path:"",s=e?`${e}/${y}`:y;try{await $fetch(`/api/skills/${p.skillName}/files/create`,{method:"POST",body:{path:s,type:"directory"}}),$("refresh"),m.add({title:`Created ${y}/`,color:"success"})}catch{m.add({title:"Failed to create folder",color:"error"})}_.value=!1,f.value=""}async function V(){if(i.value){try{await $fetch(`/api/skills/${p.skillName}/files/delete`,{method:"POST",body:{path:i.value.path}}),$("refresh"),m.add({title:`Deleted ${i.value.label}`,color:"success"})}catch{m.add({title:"Failed to delete",color:"error"})}c.value=!1}}return(y,e)=>{const s=K,S=ie,C=re,O=q,F=L,M=de,R=G;return u(),N("div",pe,[n(C,{items:t(j)},{default:o(()=>[d("div",{class:"flex-1 h-full overflow-auto p-2",onContextmenu:e[0]||(e[0]=ee(r=>i.value=null,["self"]))},[U.files.length===0?(u(),N("div",_e,[n(s,{name:"i-lucide-folder-open",class:"size-8 mx-auto mb-2 opacity-50"}),e[9]||(e[9]=d("p",null,"No files found",-1)),e[10]||(e[10]=d("p",{class:"text-xs mt-1"}," Right-click to create a file ",-1))])):(u(),g(S,{key:1,items:t(k),"get-key":r=>r.id,color:"primary","expanded-icon":"i-lucide-folder-open","collapsed-icon":"i-lucide-folder",onSelect:h},{item:o(({item:r,expanded:J})=>[d("div",{class:"flex items-center gap-2 w-full",onContextmenu:Ke=>i.value=r},[r.children?.length?(u(),g(s,{key:0,name:J?"i-lucide-folder-open":"i-lucide-folder",class:"size-4 shrink-0 text-dimmed"},null,8,["name"])):r.icon?(u(),g(s,{key:1,name:r.icon,class:"size-4 shrink-0 text-dimmed"},null,8,["name"])):(u(),g(s,{key:2,name:"i-lucide-file",class:"size-4 shrink-0 text-dimmed"})),d("span",ye,B(r.label),1)],40,ve)]),_:1},8,["items","get-key"]))],32)]),_:1},8,["items"]),n(R,{open:t(x),"onUpdate:open":e[3]||(e[3]=r=>T(x)?x.value=r:null)},{content:o(()=>[n(M,null,{header:o(()=>[d("div",ke,[n(s,{name:"i-lucide-file-plus",class:"size-5"}),e[11]||(e[11]=d("span",{class:"font-semibold"},"New File",-1))])]),footer:o(()=>[d("div",xe,[n(F,{color:"neutral",variant:"ghost",onClick:e[2]||(e[2]=r=>x.value=!1)},{default:o(()=>[...e[12]||(e[12]=[w(" Cancel ",-1)])]),_:1}),n(F,{onClick:a},{default:o(()=>[...e[13]||(e[13]=[w(" Create ",-1)])]),_:1})])]),default:o(()=>[n(O,{modelValue:t(f),"onUpdate:modelValue":e[1]||(e[1]=r=>T(f)?f.value=r:null),placeholder:"filename.py",autofocus:"",onKeyup:W(a,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["open"]),n(R,{open:t(_),"onUpdate:open":e[6]||(e[6]=r=>T(_)?_.value=r:null)},{content:o(()=>[n(M,null,{header:o(()=>[d("div",he,[n(s,{name:"i-lucide-folder-plus",class:"size-5"}),e[14]||(e[14]=d("span",{class:"font-semibold"},"New Folder",-1))])]),footer:o(()=>[d("div",$e,[n(F,{color:"neutral",variant:"ghost",onClick:e[5]||(e[5]=r=>_.value=!1)},{default:o(()=>[...e[15]||(e[15]=[w(" Cancel ",-1)])]),_:1}),n(F,{onClick:v},{default:o(()=>[...e[16]||(e[16]=[w(" Create ",-1)])]),_:1})])]),default:o(()=>[n(O,{modelValue:t(f),"onUpdate:modelValue":e[4]||(e[4]=r=>T(f)?f.value=r:null),placeholder:"folder-name",autofocus:"",onKeyup:W(v,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["open"]),n(R,{open:t(c),"onUpdate:open":e[8]||(e[8]=r=>T(c)?c.value=r:null)},{content:o(()=>[n(M,null,{header:o(()=>[d("div",ge,[n(s,{name:"i-lucide-trash-2",class:"size-5"}),e[17]||(e[17]=d("span",{class:"font-semibold"},"Delete",-1))])]),footer:o(()=>[d("div",we,[n(F,{color:"neutral",variant:"ghost",onClick:e[7]||(e[7]=r=>c.value=!1)},{default:o(()=>[...e[20]||(e[20]=[w(" Cancel ",-1)])]),_:1}),n(F,{color:"error",onClick:V},{default:o(()=>[...e[21]||(e[21]=[w(" Delete ",-1)])]),_:1})])]),default:o(()=>[d("p",null,[e[18]||(e[18]=w(" Are you sure you want to delete ",-1)),d("strong",null,B(t(i)?.label),1),e[19]||(e[19]=w("? ",-1))]),t(i)?.type==="directory"?(u(),N("p",be," This will delete all files and folders inside. ")):z("",!0)]),_:1})]),_:1},8,["open"])])}}}),Ne=Object.assign(Ce,{__name:"SkillsFileTree"}),Ue=ce(me),Se={class:"flex flex-col h-full"},Fe={class:"flex items-center justify-between px-4 py-2 border-b border-default"},ze={class:"flex items-center gap-2 text-sm text-muted"},je={key:0,class:"flex-1 flex items-center justify-center"},Pe=E({__name:"Editor",props:{skillName:{},filePath:{}},emits:["saved"],setup(U,{emit:P}){const p=U,$=P,m=I(),l=b(""),k=b(""),i=b(!0),x=b(!1),_=D(()=>l.value!==k.value),c=D(()=>{switch(p.filePath.split(".").pop()?.toLowerCase()){case"py":return"python";case"md":return"markdown";case"json":return"json";case"ts":return"typescript";case"js":return"javascript";case"yaml":case"yml":return"yaml";case"sh":case"bash":return"bash";default:return"plaintext"}});async function f(){i.value=!0;try{const a=await $fetch(`/api/skills/${p.skillName}/files/read`,{method:"POST",body:{path:p.filePath}});l.value=a.data.content,k.value=a.data.content}catch{m.add({title:"Failed to load file",color:"error"})}finally{i.value=!1}}async function j(){x.value=!0;try{await $fetch(`/api/skills/${p.skillName}/files/write`,{method:"POST",body:{path:p.filePath,content:l.value}}),k.value=l.value,m.add({title:"File saved",color:"success"}),$("saved")}catch{m.add({title:"Failed to save file",color:"error"})}finally{x.value=!1}}function h(a){(a.metaKey||a.ctrlKey)&&a.key==="s"&&(a.preventDefault(),_.value&&j())}return A(()=>{f(),window.addEventListener("keydown",h)}),te(()=>{window.removeEventListener("keydown",h)}),Z(()=>p.filePath,()=>f()),(a,v)=>{const V=K,y=H,e=L,s=Ue;return u(),N("div",Se,[d("div",Fe,[d("div",ze,[n(V,{name:"i-lucide-file-code",class:"size-4"}),d("span",null,B(U.filePath),1),t(_)?(u(),g(y,{key:0,variant:"soft",color:"warning",size:"xs"},{default:o(()=>[...v[1]||(v[1]=[w(" Modified ",-1)])]),_:1})):z("",!0)]),n(e,{size:"xs",loading:t(x),disabled:!t(_),onClick:j},{default:o(()=>[...v[2]||(v[2]=[w(" Save ",-1)])]),_:1},8,["loading","disabled"])]),t(i)?(u(),N("div",je,[n(V,{name:"i-lucide-loader-2",class:"size-6 animate-spin text-dimmed"})])):(u(),g(s,{key:1,modelValue:t(l),"onUpdate:modelValue":v[0]||(v[0]=S=>T(l)?l.value=S:null),language:t(c),class:"flex-1"},null,8,["modelValue","language"]))])}}}),Te=Object.assign(Pe,{__name:"SkillsEditor"}),Ve={class:"flex justify-end gap-2"},Me=E({__name:"RenameModal",props:{open:{type:Boolean},currentName:{}},emits:["update:open","renamed"],setup(U,{emit:P}){const p=U,$=P,m=I(),l=b(p.currentName),k=b(!1);Z(()=>p.currentName,_=>{l.value=_});function i(){$("update:open",!1)}async function x(){if(!(!l.value.trim()||l.value.trim()===p.currentName)){k.value=!0;try{await $fetch(`/api/skills/${p.currentName}/rename`,{method:"POST",body:{newName:l.value.trim()}}),m.add({title:`Skill renamed to '${l.value.trim()}'`,color:"success"}),$("renamed",l.value.trim()),i()}catch(_){const c=_ instanceof Error?_.message:"Failed to rename skill";m.add({title:c,color:"error"})}finally{k.value=!1}}}return(_,c)=>{const f=q,j=fe,h=L,a=G;return u(),g(a,{open:p.open,"onUpdate:open":c[1]||(c[1]=v=>$("update:open",v))},{header:o(()=>[...c[2]||(c[2]=[d("span",{class:"font-semibold"},"Rename Skill",-1)])]),body:o(()=>[n(j,{label:"New Name"},{default:o(()=>[n(f,{modelValue:t(l),"onUpdate:modelValue":c[0]||(c[0]=v=>T(l)?l.value=v:null),placeholder:"my-skill",disabled:t(k)},null,8,["modelValue","disabled"])]),_:1})]),footer:o(()=>[d("div",Ve,[n(h,{variant:"ghost",color:"neutral",disabled:t(k),onClick:i},{default:o(()=>[...c[3]||(c[3]=[w(" Cancel ",-1)])]),_:1},8,["disabled"]),n(h,{loading:t(k),disabled:!t(l).trim()||t(l).trim()===U.currentName,onClick:x},{default:o(()=>[...c[4]||(c[4]=[w(" Rename ",-1)])]),_:1},8,["loading","disabled"])])]),_:1},8,["open"])}}}),Re=Object.assign(Me,{__name:"SkillsRenameModal"}),De={class:"flex flex-1 min-w-0"},Oe={key:0,class:"p-4 space-y-2"},Be={class:"font-medium"},Ee={key:0,class:"flex-1 flex items-center justify-center h-full"},Ie={key:1,class:"flex-1 flex items-center justify-center h-full text-dimmed"},Le={class:"text-center"},Ut=E({__name:"[name]",setup(U){const P=le(),p=oe(),$=I(),m=D(()=>P.params.name),l=b(null),k=b(!0),i=b(""),x=b(!1);async function _(){k.value=!0;try{const h=await $fetch(`/api/skills/${m.value}`);if(l.value=h.data,!i.value){const a=h.data.files.find(v=>v.name==="SKILL.md");a&&(i.value=a.path)}}catch{$.add({title:"Skill not found",color:"error"}),p.push("/skills")}finally{k.value=!1}}async function c(){if(!(!l.value||l.value.core))try{const h=await $fetch(`/api/skills/${m.value}/toggle`,{method:"POST"});l.value.active=h.data.active,$.add({title:`${m.value} ${h.data.active?"enabled":"disabled"}`,color:"success"})}catch{$.add({title:"Failed to toggle skill",color:"error"})}}function f(h){p.replace(`/skills/${h}`)}function j(){window.open(`/api/skills/${m.value}/export`,"_blank")}return A(()=>_()),(h,a)=>{const v=X,V=Y,y=Ne,e=Q,s=K,S=se,C=H,O=ue,F=L,M=Te,R=Re;return u(),N("div",De,[n(e,{id:"skill-filetree",collapsible:"",resizable:"","min-size":12,"default-size":16,"max-size":24,class:"hidden lg:flex"},{header:o(()=>[n(v,null,{title:o(()=>[...a[3]||(a[3]=[d("span",{class:"text-sm font-medium truncate"},"Files",-1)])]),_:1})]),body:o(()=>[t(k)?(u(),N("div",Oe,[(u(),N(ne,null,ae(4,r=>n(V,{key:r,class:"h-6 w-full"})),64))])):t(l)?(u(),g(y,{key:1,"skill-name":t(m),files:t(l).files,"selected-path":t(i),onSelect:a[0]||(a[0]=r=>i.value=r),onRefresh:_},null,8,["skill-name","files","selected-path"])):z("",!0)]),_:1}),n(e,{id:"skill-editor",grow:"",ui:{body:"!p-0"}},{header:o(()=>[n(v,null,{title:o(()=>[n(S,{to:"/skills",class:"text-muted hover:text-default transition-colors"},{default:o(()=>[n(s,{name:"i-lucide-arrow-left",class:"size-4"})]),_:1}),d("span",Be,B(t(m)),1),t(l)?.core?(u(),g(C,{key:0,variant:"subtle",color:"primary",size:"xs"},{default:o(()=>[...a[4]||(a[4]=[w(" Core ",-1)])]),_:1})):z("",!0),t(l)&&!t(l).active?(u(),g(C,{key:1,variant:"subtle",color:"neutral",size:"xs"},{default:o(()=>[...a[5]||(a[5]=[w(" Disabled ",-1)])]),_:1})):z("",!0)]),right:o(()=>[t(l)&&!t(l).core?(u(),g(O,{key:0,"model-value":t(l).active,size:"sm","onUpdate:modelValue":c},null,8,["model-value"])):z("",!0),t(l)&&!t(l).core?(u(),g(F,{key:1,icon:"i-lucide-pencil",variant:"ghost",color:"neutral",size:"sm",onClick:a[1]||(a[1]=r=>x.value=!0)})):z("",!0),t(l)?(u(),g(F,{key:2,icon:"i-lucide-download",variant:"ghost",color:"neutral",size:"sm",onClick:j})):z("",!0)]),_:1})]),body:o(()=>[t(k)?(u(),N("div",Ee,[n(s,{name:"i-lucide-loader-2",class:"size-6 animate-spin text-dimmed"})])):t(i)?(u(),g(M,{key:t(i),"skill-name":t(m),"file-path":t(i),onSaved:_},null,8,["skill-name","file-path"])):(u(),N("div",Ie,[d("div",Le,[n(s,{name:"i-lucide-file-code",class:"size-12 mx-auto mb-4 opacity-50"}),a[6]||(a[6]=d("p",null,"Select a file to edit",-1))])]))]),_:1}),t(l)?(u(),g(R,{key:0,open:t(x),"current-name":t(m),"onUpdate:open":a[2]||(a[2]=r=>x.value=r),onRenamed:f},null,8,["open","current-name"])):z("",!0)])}}});export{Ut as default};
1
+ import{_ as Q,a as X}from"./CoUQ3qpL.js";import{_ as Y}from"./BVNZYpXH.js";import{d as E,aj as I,h as D,e as b,M as N,o as u,Z as n,w as o,ac as d,ao as ee,c as g,_ as K,a as t,af as B,bm as W,ak as T,a0 as L,ab as w,aa as z,C as A,a5 as te,f as Z,ah as le,bh as oe,al as ne,am as ae,ag as se}from"./B06CcGVK.js";import{_ as ie,a as re}from"./C7hn68Tp.js";import{_ as q}from"./CHd8mdNy.js";import{_ as de}from"./CkfP4uja.js";import{_ as G}from"./aUYaYlYl.js";import{_ as H}from"./CGTQGJ_c.js";import{_ as ue}from"./C4ui9LWq.js";import{a as ce}from"./DKHJBr2m.js";import{_ as me}from"./oWO88tvt.js";import{_ as fe}from"./BQeDYnyj.js";import"./Dc8vLBQN.js";import"./hkCaWCzP.js";import"./DH2yWNbZ.js";import"./C0FuVjdX.js";import"./DZQxxfue.js";import"./B0v0agy0.js";import"./olSL1K5t.js";import"./DY78sr_b.js";import"./CKfAI3Hb.js";import"./CXRkSVkD.js";import"./C7RIYfkH.js";import"./CvaD7s2l.js";import"./5qkiDtwf.js";import"./BuURpKT4.js";import"./BIoHE1oQ.js";import"./C6Y-ieo6.js";import"./CTJDAjdO.js";import"./BGytjslk.js";import"./Cwel2ykQ.js";import"./Tirj2rC0.js";import"./CiQJYbKL.js";import"./CopZwjN8.js";import"./0L-9iIbm.js";import"./DnfG5RzJ.js";import"./Vcq4gwWv.js";const pe={class:"h-full flex flex-col"},_e={key:0,class:"h-full min-h-32 flex flex-col items-center justify-center text-dimmed text-sm"},ve=["onContextmenu"],ye={class:"truncate"},ke={class:"flex items-center gap-2"},xe={class:"flex justify-end gap-2"},he={class:"flex items-center gap-2"},$e={class:"flex justify-end gap-2"},ge={class:"flex items-center gap-2 text-error"},be={key:0,class:"text-sm text-dimmed mt-1"},we={class:"flex justify-end gap-2"},Ce=E({__name:"FileTree",props:{skillName:{},files:{},selectedPath:{}},emits:["select","refresh"],setup(U,{emit:P}){const p=U,$=P,m=I();function l(y,e=""){return y.map(s=>{const S=e?`${e}/${s.path}`:s.path,C={id:S,label:s.name,path:S,type:s.type,defaultExpanded:!0};return s.type==="directory"?C.children=s.children?l(s.children,S):[]:s.name.endsWith(".py")?C.icon="i-lucide-file-code":s.name.endsWith(".md")?C.icon="i-lucide-file-text":s.name.endsWith(".json")?C.icon="i-lucide-file-json":C.icon="i-lucide-file",C})}const k=D(()=>l(p.files)),i=b(null),x=b(!1),_=b(!1),c=b(!1),f=b(""),j=D(()=>[[{label:"New File",icon:"i-lucide-file-plus",onSelect:()=>{f.value="",x.value=!0}},{label:"New Folder",icon:"i-lucide-folder-plus",onSelect:()=>{f.value="",_.value=!0}}],[{label:"Delete",icon:"i-lucide-trash-2",color:"error",onSelect:()=>{i.value&&i.value.label!=="SKILL.md"&&(c.value=!0)}}]]);function h(y,e){e.type==="file"&&$("select",e.path)}async function a(){if(!f.value.trim())return;let y=f.value.trim();y.includes(".")||(y+=".py");const e=i.value?.type==="directory"?i.value.path:"",s=e?`${e}/${y}`:y;try{await $fetch(`/api/skills/${p.skillName}/files/create`,{method:"POST",body:{path:s,type:"file"}}),$("refresh"),$("select",s),m.add({title:`Created ${y}`,color:"success"})}catch{m.add({title:"Failed to create file",color:"error"})}x.value=!1,f.value=""}async function v(){if(!f.value.trim())return;const y=f.value.trim(),e=i.value?.type==="directory"?i.value.path:"",s=e?`${e}/${y}`:y;try{await $fetch(`/api/skills/${p.skillName}/files/create`,{method:"POST",body:{path:s,type:"directory"}}),$("refresh"),m.add({title:`Created ${y}/`,color:"success"})}catch{m.add({title:"Failed to create folder",color:"error"})}_.value=!1,f.value=""}async function V(){if(i.value){try{await $fetch(`/api/skills/${p.skillName}/files/delete`,{method:"POST",body:{path:i.value.path}}),$("refresh"),m.add({title:`Deleted ${i.value.label}`,color:"success"})}catch{m.add({title:"Failed to delete",color:"error"})}c.value=!1}}return(y,e)=>{const s=K,S=ie,C=re,O=q,F=L,M=de,R=G;return u(),N("div",pe,[n(C,{items:t(j)},{default:o(()=>[d("div",{class:"flex-1 h-full overflow-auto p-2",onContextmenu:e[0]||(e[0]=ee(r=>i.value=null,["self"]))},[U.files.length===0?(u(),N("div",_e,[n(s,{name:"i-lucide-folder-open",class:"size-8 mx-auto mb-2 opacity-50"}),e[9]||(e[9]=d("p",null,"No files found",-1)),e[10]||(e[10]=d("p",{class:"text-xs mt-1"}," Right-click to create a file ",-1))])):(u(),g(S,{key:1,items:t(k),"get-key":r=>r.id,color:"primary","expanded-icon":"i-lucide-folder-open","collapsed-icon":"i-lucide-folder",onSelect:h},{item:o(({item:r,expanded:J})=>[d("div",{class:"flex items-center gap-2 w-full",onContextmenu:Ke=>i.value=r},[r.children?.length?(u(),g(s,{key:0,name:J?"i-lucide-folder-open":"i-lucide-folder",class:"size-4 shrink-0 text-dimmed"},null,8,["name"])):r.icon?(u(),g(s,{key:1,name:r.icon,class:"size-4 shrink-0 text-dimmed"},null,8,["name"])):(u(),g(s,{key:2,name:"i-lucide-file",class:"size-4 shrink-0 text-dimmed"})),d("span",ye,B(r.label),1)],40,ve)]),_:1},8,["items","get-key"]))],32)]),_:1},8,["items"]),n(R,{open:t(x),"onUpdate:open":e[3]||(e[3]=r=>T(x)?x.value=r:null)},{content:o(()=>[n(M,null,{header:o(()=>[d("div",ke,[n(s,{name:"i-lucide-file-plus",class:"size-5"}),e[11]||(e[11]=d("span",{class:"font-semibold"},"New File",-1))])]),footer:o(()=>[d("div",xe,[n(F,{color:"neutral",variant:"ghost",onClick:e[2]||(e[2]=r=>x.value=!1)},{default:o(()=>[...e[12]||(e[12]=[w(" Cancel ",-1)])]),_:1}),n(F,{onClick:a},{default:o(()=>[...e[13]||(e[13]=[w(" Create ",-1)])]),_:1})])]),default:o(()=>[n(O,{modelValue:t(f),"onUpdate:modelValue":e[1]||(e[1]=r=>T(f)?f.value=r:null),placeholder:"filename.py",autofocus:"",onKeyup:W(a,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["open"]),n(R,{open:t(_),"onUpdate:open":e[6]||(e[6]=r=>T(_)?_.value=r:null)},{content:o(()=>[n(M,null,{header:o(()=>[d("div",he,[n(s,{name:"i-lucide-folder-plus",class:"size-5"}),e[14]||(e[14]=d("span",{class:"font-semibold"},"New Folder",-1))])]),footer:o(()=>[d("div",$e,[n(F,{color:"neutral",variant:"ghost",onClick:e[5]||(e[5]=r=>_.value=!1)},{default:o(()=>[...e[15]||(e[15]=[w(" Cancel ",-1)])]),_:1}),n(F,{onClick:v},{default:o(()=>[...e[16]||(e[16]=[w(" Create ",-1)])]),_:1})])]),default:o(()=>[n(O,{modelValue:t(f),"onUpdate:modelValue":e[4]||(e[4]=r=>T(f)?f.value=r:null),placeholder:"folder-name",autofocus:"",onKeyup:W(v,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["open"]),n(R,{open:t(c),"onUpdate:open":e[8]||(e[8]=r=>T(c)?c.value=r:null)},{content:o(()=>[n(M,null,{header:o(()=>[d("div",ge,[n(s,{name:"i-lucide-trash-2",class:"size-5"}),e[17]||(e[17]=d("span",{class:"font-semibold"},"Delete",-1))])]),footer:o(()=>[d("div",we,[n(F,{color:"neutral",variant:"ghost",onClick:e[7]||(e[7]=r=>c.value=!1)},{default:o(()=>[...e[20]||(e[20]=[w(" Cancel ",-1)])]),_:1}),n(F,{color:"error",onClick:V},{default:o(()=>[...e[21]||(e[21]=[w(" Delete ",-1)])]),_:1})])]),default:o(()=>[d("p",null,[e[18]||(e[18]=w(" Are you sure you want to delete ",-1)),d("strong",null,B(t(i)?.label),1),e[19]||(e[19]=w("? ",-1))]),t(i)?.type==="directory"?(u(),N("p",be," This will delete all files and folders inside. ")):z("",!0)]),_:1})]),_:1},8,["open"])])}}}),Ne=Object.assign(Ce,{__name:"SkillsFileTree"}),Ue=ce(me),Se={class:"flex flex-col h-full"},Fe={class:"flex items-center justify-between px-4 py-2 border-b border-default"},ze={class:"flex items-center gap-2 text-sm text-muted"},je={key:0,class:"flex-1 flex items-center justify-center"},Pe=E({__name:"Editor",props:{skillName:{},filePath:{}},emits:["saved"],setup(U,{emit:P}){const p=U,$=P,m=I(),l=b(""),k=b(""),i=b(!0),x=b(!1),_=D(()=>l.value!==k.value),c=D(()=>{switch(p.filePath.split(".").pop()?.toLowerCase()){case"py":return"python";case"md":return"markdown";case"json":return"json";case"ts":return"typescript";case"js":return"javascript";case"yaml":case"yml":return"yaml";case"sh":case"bash":return"bash";default:return"plaintext"}});async function f(){i.value=!0;try{const a=await $fetch(`/api/skills/${p.skillName}/files/read`,{method:"POST",body:{path:p.filePath}});l.value=a.data.content,k.value=a.data.content}catch{m.add({title:"Failed to load file",color:"error"})}finally{i.value=!1}}async function j(){x.value=!0;try{await $fetch(`/api/skills/${p.skillName}/files/write`,{method:"POST",body:{path:p.filePath,content:l.value}}),k.value=l.value,m.add({title:"File saved",color:"success"}),$("saved")}catch{m.add({title:"Failed to save file",color:"error"})}finally{x.value=!1}}function h(a){(a.metaKey||a.ctrlKey)&&a.key==="s"&&(a.preventDefault(),_.value&&j())}return A(()=>{f(),window.addEventListener("keydown",h)}),te(()=>{window.removeEventListener("keydown",h)}),Z(()=>p.filePath,()=>f()),(a,v)=>{const V=K,y=H,e=L,s=Ue;return u(),N("div",Se,[d("div",Fe,[d("div",ze,[n(V,{name:"i-lucide-file-code",class:"size-4"}),d("span",null,B(U.filePath),1),t(_)?(u(),g(y,{key:0,variant:"soft",color:"warning",size:"xs"},{default:o(()=>[...v[1]||(v[1]=[w(" Modified ",-1)])]),_:1})):z("",!0)]),n(e,{size:"xs",loading:t(x),disabled:!t(_),onClick:j},{default:o(()=>[...v[2]||(v[2]=[w(" Save ",-1)])]),_:1},8,["loading","disabled"])]),t(i)?(u(),N("div",je,[n(V,{name:"i-lucide-loader-2",class:"size-6 animate-spin text-dimmed"})])):(u(),g(s,{key:1,modelValue:t(l),"onUpdate:modelValue":v[0]||(v[0]=S=>T(l)?l.value=S:null),language:t(c),class:"flex-1"},null,8,["modelValue","language"]))])}}}),Te=Object.assign(Pe,{__name:"SkillsEditor"}),Ve={class:"flex justify-end gap-2"},Me=E({__name:"RenameModal",props:{open:{type:Boolean},currentName:{}},emits:["update:open","renamed"],setup(U,{emit:P}){const p=U,$=P,m=I(),l=b(p.currentName),k=b(!1);Z(()=>p.currentName,_=>{l.value=_});function i(){$("update:open",!1)}async function x(){if(!(!l.value.trim()||l.value.trim()===p.currentName)){k.value=!0;try{await $fetch(`/api/skills/${p.currentName}/rename`,{method:"POST",body:{newName:l.value.trim()}}),m.add({title:`Skill renamed to '${l.value.trim()}'`,color:"success"}),$("renamed",l.value.trim()),i()}catch(_){const c=_ instanceof Error?_.message:"Failed to rename skill";m.add({title:c,color:"error"})}finally{k.value=!1}}}return(_,c)=>{const f=q,j=fe,h=L,a=G;return u(),g(a,{open:p.open,"onUpdate:open":c[1]||(c[1]=v=>$("update:open",v))},{header:o(()=>[...c[2]||(c[2]=[d("span",{class:"font-semibold"},"Rename Skill",-1)])]),body:o(()=>[n(j,{label:"New Name"},{default:o(()=>[n(f,{modelValue:t(l),"onUpdate:modelValue":c[0]||(c[0]=v=>T(l)?l.value=v:null),placeholder:"my-skill",disabled:t(k)},null,8,["modelValue","disabled"])]),_:1})]),footer:o(()=>[d("div",Ve,[n(h,{variant:"ghost",color:"neutral",disabled:t(k),onClick:i},{default:o(()=>[...c[3]||(c[3]=[w(" Cancel ",-1)])]),_:1},8,["disabled"]),n(h,{loading:t(k),disabled:!t(l).trim()||t(l).trim()===U.currentName,onClick:x},{default:o(()=>[...c[4]||(c[4]=[w(" Rename ",-1)])]),_:1},8,["loading","disabled"])])]),_:1},8,["open"])}}}),Re=Object.assign(Me,{__name:"SkillsRenameModal"}),De={class:"flex flex-1 min-w-0"},Oe={key:0,class:"p-4 space-y-2"},Be={class:"font-medium"},Ee={key:0,class:"flex-1 flex items-center justify-center h-full"},Ie={key:1,class:"flex-1 flex items-center justify-center h-full text-dimmed"},Le={class:"text-center"},Ut=E({__name:"[name]",setup(U){const P=le(),p=oe(),$=I(),m=D(()=>P.params.name),l=b(null),k=b(!0),i=b(""),x=b(!1);async function _(){k.value=!0;try{const h=await $fetch(`/api/skills/${m.value}`);if(l.value=h.data,!i.value){const a=h.data.files.find(v=>v.name==="SKILL.md");a&&(i.value=a.path)}}catch{$.add({title:"Skill not found",color:"error"}),p.push("/skills")}finally{k.value=!1}}async function c(){if(!(!l.value||l.value.core))try{const h=await $fetch(`/api/skills/${m.value}/toggle`,{method:"POST"});l.value.active=h.data.active,$.add({title:`${m.value} ${h.data.active?"enabled":"disabled"}`,color:"success"})}catch{$.add({title:"Failed to toggle skill",color:"error"})}}function f(h){p.replace(`/skills/${h}`)}function j(){window.open(`/api/skills/${m.value}/export`,"_blank")}return A(()=>_()),(h,a)=>{const v=X,V=Y,y=Ne,e=Q,s=K,S=se,C=H,O=ue,F=L,M=Te,R=Re;return u(),N("div",De,[n(e,{id:"skill-filetree",collapsible:"",resizable:"","min-size":12,"default-size":16,"max-size":24,class:"hidden lg:flex"},{header:o(()=>[n(v,null,{title:o(()=>[...a[3]||(a[3]=[d("span",{class:"text-sm font-medium truncate"},"Files",-1)])]),_:1})]),body:o(()=>[t(k)?(u(),N("div",Oe,[(u(),N(ne,null,ae(4,r=>n(V,{key:r,class:"h-6 w-full"})),64))])):t(l)?(u(),g(y,{key:1,"skill-name":t(m),files:t(l).files,"selected-path":t(i),onSelect:a[0]||(a[0]=r=>i.value=r),onRefresh:_},null,8,["skill-name","files","selected-path"])):z("",!0)]),_:1}),n(e,{id:"skill-editor",grow:"",ui:{body:"!p-0"}},{header:o(()=>[n(v,null,{title:o(()=>[n(S,{to:"/skills",class:"text-muted hover:text-default transition-colors"},{default:o(()=>[n(s,{name:"i-lucide-arrow-left",class:"size-4"})]),_:1}),d("span",Be,B(t(m)),1),t(l)?.core?(u(),g(C,{key:0,variant:"subtle",color:"primary",size:"xs"},{default:o(()=>[...a[4]||(a[4]=[w(" Core ",-1)])]),_:1})):z("",!0),t(l)&&!t(l).active?(u(),g(C,{key:1,variant:"subtle",color:"neutral",size:"xs"},{default:o(()=>[...a[5]||(a[5]=[w(" Disabled ",-1)])]),_:1})):z("",!0)]),right:o(()=>[t(l)&&!t(l).core?(u(),g(O,{key:0,"model-value":t(l).active,size:"sm","onUpdate:modelValue":c},null,8,["model-value"])):z("",!0),t(l)&&!t(l).core?(u(),g(F,{key:1,icon:"i-lucide-pencil",variant:"ghost",color:"neutral",size:"sm",onClick:a[1]||(a[1]=r=>x.value=!0)})):z("",!0),t(l)?(u(),g(F,{key:2,icon:"i-lucide-download",variant:"ghost",color:"neutral",size:"sm",onClick:j})):z("",!0)]),_:1})]),body:o(()=>[t(k)?(u(),N("div",Ee,[n(s,{name:"i-lucide-loader-2",class:"size-6 animate-spin text-dimmed"})])):t(i)?(u(),g(M,{key:t(i),"skill-name":t(m),"file-path":t(i),onSaved:_},null,8,["skill-name","file-path"])):(u(),N("div",Ie,[d("div",Le,[n(s,{name:"i-lucide-file-code",class:"size-12 mx-auto mb-4 opacity-50"}),a[6]||(a[6]=d("p",null,"Select a file to edit",-1))])]))]),_:1}),t(l)?(u(),g(R,{key:0,open:t(x),"current-name":t(m),"onUpdate:open":a[2]||(a[2]=r=>x.value=r),onRenamed:f},null,8,["open","current-name"])):z("",!0)])}}});export{Ut as default};
@@ -1 +1 @@
1
- import{F as a,a8 as u}from"./CGgHmnnS.js";let t=0;function s(){a(e=>{if(!u)return;const n=document.querySelectorAll("[data-reka-focus-guard]");document.body.insertAdjacentElement("afterbegin",n[0]??o()),document.body.insertAdjacentElement("beforeend",n[1]??o()),t++,e(()=>{t===1&&document.querySelectorAll("[data-reka-focus-guard]").forEach(r=>r.remove()),t--})})}function o(){const e=document.createElement("span");return e.setAttribute("data-reka-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}export{s as u};
1
+ import{F as a,a8 as u}from"./B06CcGVK.js";let t=0;function s(){a(e=>{if(!u)return;const n=document.querySelectorAll("[data-reka-focus-guard]");document.body.insertAdjacentElement("afterbegin",n[0]??o()),document.body.insertAdjacentElement("beforeend",n[1]??o()),t++,e(()=>{t===1&&document.querySelectorAll("[data-reka-focus-guard]").forEach(r=>r.remove()),t--})})}function o(){const e=document.createElement("span");return e.setAttribute("data-reka-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}export{s as u};
@@ -1 +1 @@
1
- import{T as f}from"./CGgHmnnS.js";const T="menu.itemSelect",E=["Enter"," "],_=["ArrowDown","PageUp","Home"],d=["ArrowUp","PageDown","End"],I=[..._,...d],w={ltr:[...E,"ArrowRight"],rtl:[...E,"ArrowLeft"]},P={ltr:["ArrowLeft"],rtl:["ArrowRight"]};function Y(t){return t?"open":"closed"}function l(t){return t==="indeterminate"}function x(t){return l(t)?"indeterminate":t?"checked":"unchecked"}function g(t){const e=f();for(const n of t)if(n===e||(n.focus(),f()!==e))return}function m(t,e){const{x:n,y:s}=t;let o=!1;for(let r=0,i=e.length-1;r<e.length;i=r++){const a=e[r].x,c=e[r].y,S=e[i].x,u=e[i].y;c>s!=u>s&&n<(S-a)*(s-c)/(u-c)+a&&(o=!o)}return o}function h(t,e){if(!e)return!1;const n={x:t.clientX,y:t.clientY};return m(n,e)}function K(t){return t.pointerType==="mouse"}export{I as F,T as I,d as L,E as S,K as a,x as b,l as c,P as d,w as e,g as f,Y as g,h as i};
1
+ import{T as f}from"./B06CcGVK.js";const T="menu.itemSelect",E=["Enter"," "],_=["ArrowDown","PageUp","Home"],d=["ArrowUp","PageDown","End"],I=[..._,...d],w={ltr:[...E,"ArrowRight"],rtl:[...E,"ArrowLeft"]},P={ltr:["ArrowLeft"],rtl:["ArrowRight"]};function Y(t){return t?"open":"closed"}function l(t){return t==="indeterminate"}function x(t){return l(t)?"indeterminate":t?"checked":"unchecked"}function g(t){const e=f();for(const n of t)if(n===e||(n.focus(),f()!==e))return}function m(t,e){const{x:n,y:s}=t;let o=!1;for(let r=0,i=e.length-1;r<e.length;i=r++){const a=e[r].x,c=e[r].y,S=e[i].x,u=e[i].y;c>s!=u>s&&n<(S-a)*(s-c)/(u-c)+a&&(o=!o)}return o}function h(t,e){if(!e)return!1;const n={x:t.clientX,y:t.clientY};return m(n,e)}function K(t){return t.pointerType==="mouse"}export{I as F,T as I,d as L,E as S,K as a,x as b,l as c,P as d,w as e,g as f,Y as g,h as i};
@@ -1,2 +1,2 @@
1
- import{d as Q,e as k,h as L,M as l,o as n,ac as x,aa as w,c as M,Z as B,a as c,af as z,w as H,ab as ce,_ as le,$ as X,al as W,am as Y,ak as ie,aj as fe,p as P,bJ as ve,bK as ge,a0 as he,B as xe}from"./CGgHmnnS.js";import{_ as me}from"./n5X4vNX9.js";import{_ as ye}from"./CCmSsj4q.js";import{a as be}from"./B8na0pik.js";import{_ as ke}from"./1_nO5SO6.js";import{_ as _e}from"./NNQizITf.js";import{s as we}from"./CnB-ybCZ.js";const Ce={class:"border border-default rounded-lg my-2 overflow-hidden"},$e={class:"font-mono text-xs"},je=Q({__name:"ToolCallBlock",props:{toolName:{},result:{},isError:{type:Boolean},pending:{type:Boolean}},setup(e){const o=e,m=k(!1),f={Read:"i-lucide-file-text",Edit:"i-lucide-pencil",Write:"i-lucide-file-plus",Bash:"i-lucide-terminal",Glob:"i-lucide-search",Grep:"i-lucide-text-search",Task:"i-lucide-git-branch",WebFetch:"i-lucide-globe",WebSearch:"i-lucide-search"},j=L(()=>f[o.toolName]||"i-lucide-wrench"),h=L(()=>o.result?o.result.length>500?o.result.slice(0,500)+"...":o.result:"");return($,a)=>{const s=le,v=_e;return n(),l("div",Ce,[x("button",{class:"flex items-center gap-2 w-full px-3 py-2 text-sm text-muted hover:bg-elevated/50 transition-colors",onClick:a[0]||(a[0]=y=>m.value=!c(m))},[e.pending?(n(),M(s,{key:0,name:"i-lucide-loader-2",class:"size-4 animate-spin text-primary"})):(n(),M(s,{key:1,name:c(j),class:"size-4"},null,8,["name"])),x("span",$e,z(e.toolName),1),e.isError?(n(),M(v,{key:2,color:"error",variant:"subtle",size:"xs"},{default:H(()=>[...a[1]||(a[1]=[ce(" error ",-1)])]),_:1})):e.pending?(n(),M(v,{key:3,color:"warning",variant:"subtle",size:"xs"},{default:H(()=>[...a[2]||(a[2]=[ce(" running ",-1)])]),_:1})):w("",!0),B(s,{name:c(m)?"i-lucide-chevron-up":"i-lucide-chevron-down",class:"size-4 ms-auto"},null,8,["name"])]),c(m)&&e.result?(n(),l("div",{key:0,class:X(["border-t border-default px-3 py-2 text-xs font-mono bg-elevated/25 max-h-64 overflow-auto whitespace-pre-wrap",{"text-error":e.isError}])},z(c(h)),3)):w("",!0)])}}}),pe=Object.assign(je,{__name:"ChatToolCallBlock"}),Ue=be(ke),Ie={key:0},Se={key:0,class:"flex flex-wrap gap-2 mb-2"},Te=["src","onClick"],De={key:1,class:"flex flex-wrap gap-2 mb-2"},Ee=["onClick"],Me={class:"truncate max-w-32"},Ae={key:2,class:"text-sm whitespace-pre-wrap"},ze={key:0,class:"chat-prose prose prose-sm dark:prose-invert max-w-none"},Be={key:1,class:"flex items-center gap-3 mt-2 text-xs text-dimmed"},Re={key:0},Fe={key:1},Le={class:"flex items-center justify-center"},Oe=["src"],Pe={class:"flex items-center gap-2"},Ne={class:"text-sm font-medium truncate"},qe={class:"h-[60vh] overflow-hidden rounded-lg border border-default"},We=Q({__name:"MessageBubble",props:{message:{}},setup(e){function o(i){return i.filter(p=>p.type==="text").map(p=>p.text).join(`
1
+ import{d as Q,e as k,h as L,M as l,o as n,ac as x,aa as w,c as M,Z as B,a as c,af as z,w as H,ab as ce,_ as le,$ as X,al as W,am as Y,ak as ie,aj as fe,p as P,bJ as ve,bK as ge,a0 as he,B as xe}from"./B06CcGVK.js";import{_ as me}from"./zApTn6EM.js";import{_ as ye}from"./aUYaYlYl.js";import{a as be}from"./DKHJBr2m.js";import{_ as ke}from"./oWO88tvt.js";import{_ as _e}from"./CGTQGJ_c.js";import{s as we}from"./B9sXHKws.js";const Ce={class:"border border-default rounded-lg my-2 overflow-hidden"},$e={class:"font-mono text-xs"},je=Q({__name:"ToolCallBlock",props:{toolName:{},result:{},isError:{type:Boolean},pending:{type:Boolean}},setup(e){const o=e,m=k(!1),f={Read:"i-lucide-file-text",Edit:"i-lucide-pencil",Write:"i-lucide-file-plus",Bash:"i-lucide-terminal",Glob:"i-lucide-search",Grep:"i-lucide-text-search",Task:"i-lucide-git-branch",WebFetch:"i-lucide-globe",WebSearch:"i-lucide-search"},j=L(()=>f[o.toolName]||"i-lucide-wrench"),h=L(()=>o.result?o.result.length>500?o.result.slice(0,500)+"...":o.result:"");return($,a)=>{const s=le,v=_e;return n(),l("div",Ce,[x("button",{class:"flex items-center gap-2 w-full px-3 py-2 text-sm text-muted hover:bg-elevated/50 transition-colors",onClick:a[0]||(a[0]=y=>m.value=!c(m))},[e.pending?(n(),M(s,{key:0,name:"i-lucide-loader-2",class:"size-4 animate-spin text-primary"})):(n(),M(s,{key:1,name:c(j),class:"size-4"},null,8,["name"])),x("span",$e,z(e.toolName),1),e.isError?(n(),M(v,{key:2,color:"error",variant:"subtle",size:"xs"},{default:H(()=>[...a[1]||(a[1]=[ce(" error ",-1)])]),_:1})):e.pending?(n(),M(v,{key:3,color:"warning",variant:"subtle",size:"xs"},{default:H(()=>[...a[2]||(a[2]=[ce(" running ",-1)])]),_:1})):w("",!0),B(s,{name:c(m)?"i-lucide-chevron-up":"i-lucide-chevron-down",class:"size-4 ms-auto"},null,8,["name"])]),c(m)&&e.result?(n(),l("div",{key:0,class:X(["border-t border-default px-3 py-2 text-xs font-mono bg-elevated/25 max-h-64 overflow-auto whitespace-pre-wrap",{"text-error":e.isError}])},z(c(h)),3)):w("",!0)])}}}),pe=Object.assign(je,{__name:"ChatToolCallBlock"}),Ue=be(ke),Ie={key:0},Se={key:0,class:"flex flex-wrap gap-2 mb-2"},Te=["src","onClick"],De={key:1,class:"flex flex-wrap gap-2 mb-2"},Ee=["onClick"],Me={class:"truncate max-w-32"},Ae={key:2,class:"text-sm whitespace-pre-wrap"},ze={key:0,class:"chat-prose prose prose-sm dark:prose-invert max-w-none"},Be={key:1,class:"flex items-center gap-3 mt-2 text-xs text-dimmed"},Re={key:0},Fe={key:1},Le={class:"flex items-center justify-center"},Oe=["src"],Pe={class:"flex items-center gap-2"},Ne={class:"text-sm font-medium truncate"},qe={class:"h-[60vh] overflow-hidden rounded-lg border border-default"},We=Q({__name:"MessageBubble",props:{message:{}},setup(e){function o(i){return i.filter(p=>p.type==="text").map(p=>p.text).join(`
2
2
  `)}function m(i){return i.filter(p=>p.type==="image")}function f(i){return i.filter(p=>p.type==="document")}function j(i){const p=[];for(const _ of i)if(_.type==="tool_use")p.push({name:_.name,id:_.id});else if(_.type==="tool_result"){const U=p.find(I=>I.id===_.tool_use_id);U&&(U.result=_.content,U.isError=_.is_error)}return p}function h(i){return i.source.media_type==="application/pdf"?"i-lucide-file-text":"i-lucide-file-code"}const $=k(null),a=L({get:()=>$.value!==null,set:i=>{i||($.value=null)}}),s=k(null),v=L({get:()=>s.value!==null,set:i=>{i||(s.value=null)}}),y=L(()=>s.value?.source.data||""),R={md:"markdown",js:"javascript",mjs:"javascript",cjs:"javascript",jsx:"javascript",ts:"typescript",tsx:"typescript",mts:"typescript",json:"json",html:"html",htm:"html",css:"css",scss:"css",sass:"css",less:"css",vue:"vue",svelte:"html",py:"python",sql:"sql",yaml:"yaml",yml:"yaml",sh:"bash",bash:"bash",zsh:"bash",fish:"bash",go:"go",rs:"rust",dockerfile:"dockerfile",java:"java",kt:"java",c:"cpp",cpp:"cpp",h:"cpp",hpp:"cpp",cs:"cpp",xml:"xml",graphql:"plaintext",gql:"plaintext",toml:"plaintext",ini:"plaintext",csv:"plaintext",txt:"plaintext",log:"plaintext",env:"plaintext",prisma:"plaintext",proto:"plaintext"},t=L(()=>{if(!s.value?.title)return"plaintext";const i=s.value.title.split(".").pop()?.toLowerCase()||"";return R[i]||"plaintext"});function u(i){if(i.source.media_type==="application/pdf"){const p=atob(i.source.data),_=new Uint8Array(p.length);for(let S=0;S<p.length;S++)_[S]=p.charCodeAt(S);const U=new Blob([_],{type:"application/pdf"}),I=URL.createObjectURL(U);window.open(I,"_blank"),setTimeout(()=>URL.revokeObjectURL(I),1e4)}else s.value=i}const r={telegram:"i-simple-icons-telegram",discord:"i-simple-icons-discord",imessage:"i-lucide-message-circle",email:"i-lucide-mail",google:"i-simple-icons-google"};function C(i){return!i||i==="web"?null:r[i]||null}function O(i){if(!i)return"";const p=i instanceof Date?i:new Date(i),U=new Date().getTime()-p.getTime(),I=Math.floor(U/6e4),S=Math.floor(U/36e5);return I<1?"just now":I<60?`${I}m ago`:S<24?`${S}h ago`:p.toLocaleDateString(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}return(i,p)=>{const _=le,U=me,I=pe,S=ye,ee=Ue;return n(),l("div",{class:X(["flex",e.message.role==="user"?"justify-end":"justify-start"])},[e.message.role==="user"&&C(e.message.source)?(n(),M(_,{key:0,name:C(e.message.source),class:"size-4 text-dimmed self-end mb-1 mr-1.5 shrink-0"},null,8,["name"])):w("",!0),x("div",{class:X(["max-w-[85%] rounded-xl px-4 py-3",e.message.role==="user"?"bg-primary/5 text-highlighted":"bg-muted"])},[e.message.role==="user"?(n(),l("div",Ie,[m(e.message.content).length?(n(),l("div",Se,[(n(!0),l(W,null,Y(m(e.message.content),(b,K)=>(n(),l("img",{key:K,src:`data:${b.source.media_type};base64,${b.source.data}`,class:"max-w-48 max-h-48 rounded-lg object-contain cursor-pointer hover:opacity-80 transition-opacity",onClick:g=>$.value=b},null,8,Te))),128))])):w("",!0),f(e.message.content).length?(n(),l("div",De,[(n(!0),l(W,null,Y(f(e.message.content),(b,K)=>(n(),l("button",{key:K,class:"flex items-center gap-1.5 px-2.5 py-1.5 rounded-lg bg-elevated/50 border border-default text-xs hover:bg-elevated transition-colors cursor-pointer",onClick:g=>u(b)},[B(_,{name:h(b),class:"size-3.5 text-dimmed shrink-0"},null,8,["name"]),x("span",Me,z(b.title||"Document"),1),b.source.media_type==="application/pdf"?(n(),M(_,{key:0,name:"i-lucide-external-link",class:"size-3 text-dimmed shrink-0"})):w("",!0)],8,Ee))),128))])):w("",!0),o(e.message.content)?(n(),l("div",Ae,z(o(e.message.content)),1)):w("",!0)])):(n(),l(W,{key:1},[o(e.message.content)?(n(),l("div",ze,[B(U,{value:o(e.message.content)},null,8,["value"])])):w("",!0),(n(!0),l(W,null,Y(j(e.message.content),b=>(n(),M(I,{key:b.id,"tool-name":b.name,result:b.result,"is-error":b.isError},null,8,["tool-name","result","is-error"]))),128)),e.message.costUsd||e.message.durationMs?(n(),l("div",Be,[e.message.costUsd?(n(),l("span",Re,"$"+z(e.message.costUsd.toFixed(4)),1)):w("",!0),e.message.durationMs?(n(),l("span",Fe,z((e.message.durationMs/1e3).toFixed(1))+"s",1)):w("",!0)])):w("",!0)],64)),e.message.createdAt?(n(),l("div",{key:2,class:X(["mt-1 text-xs text-dimmed",e.message.role==="user"?"text-right":""])},z(O(e.message.createdAt)),3)):w("",!0)],2),B(S,{open:c(a),"onUpdate:open":p[0]||(p[0]=b=>ie(a)?a.value=b:null)},{content:H(()=>[x("div",Le,[c($)?(n(),l("img",{key:0,src:`data:${c($).source.media_type};base64,${c($).source.data}`,class:"max-w-full max-h-[80vh] object-contain rounded-lg"},null,8,Oe)):w("",!0)])]),_:1},8,["open"]),B(S,{open:c(v),"onUpdate:open":p[1]||(p[1]=b=>ie(v)?v.value=b:null)},{header:H(()=>[x("div",Pe,[B(_,{name:"i-lucide-file-code",class:"size-4 text-dimmed"}),x("span",Ne,z(c(s)?.title||"File"),1)])]),body:H(()=>[x("div",qe,[c(s)?(n(),M(ee,{key:0,"model-value":c(y),language:c(t),"read-only":""},null,8,["model-value","language"])):w("",!0)])]),_:1},8,["open"])],2)}}}),wt=Object.assign(We,{__name:"ChatMessageBubble"}),Ve={class:"flex justify-start"},Je={class:"max-w-[85%] rounded-xl px-4 py-3 bg-elevated/50"},Ke={key:0,class:"chat-prose prose prose-sm dark:prose-invert max-w-none"},Ge=Q({__name:"StreamingMessage",props:{text:{},toolCalls:{}},setup(e){return(o,m)=>{const f=me,j=pe;return n(),l("div",Ve,[x("div",Je,[e.text?(n(),l("div",Ke,[B(f,{value:e.text},null,8,["value"])])):w("",!0),(n(!0),l(W,null,Y(e.toolCalls,(h,$)=>(n(),M(j,{key:$,"tool-name":h.name,result:h.result,"is-error":h.isError,pending:!h.result},null,8,["tool-name","result","is-error","pending"]))),128)),m[0]||(m[0]=x("div",{class:"flex items-center gap-1.5 mt-2"},[x("span",{class:"size-2 rounded-full bg-primary animate-pulse"}),x("span",{class:"text-xs text-dimmed"},"Thinking...")],-1))])])}}}),Ct=Object.assign(Ge,{__name:"ChatStreamingMessage"}),He=["image/jpeg","image/png","image/gif","image/webp"],Xe=new Set(["application/json","application/javascript","application/typescript","application/xml","application/x-yaml","application/x-sh","application/sql","application/toml","application/x-httpd-php"]),Ye=20*1024*1024;function ne(){return typeof crypto<"u"&&crypto.randomUUID?crypto.randomUUID():Math.random().toString(36).slice(2)}function ue(e){return new Promise((o,m)=>{const f=new FileReader;f.onload=()=>{const h=f.result.split(",")[1];h?o(h):m(new Error("Failed to read file as base64"))},f.onerror=()=>m(f.error),f.readAsDataURL(e)})}function Ze(e){return new Promise((o,m)=>{const f=new FileReader;f.onload=()=>o(f.result),f.onerror=()=>m(f.error),f.readAsText(e)})}function Qe(e){return He.includes(e)}function et(e){return e.startsWith("text/")||Xe.has(e)}function tt(e){return e==="application/pdf"}function nt(){const e=k([]),o=fe();async function m(a){for(const s of Array.from(a)){if(s.size>Ye){o.add({title:"File too large",description:`${s.name} exceeds 20MB limit`,color:"error"});continue}const v=s.type||"";try{if(Qe(v)){const y=await ue(s),R=URL.createObjectURL(s);e.value.push({id:ne(),kind:"image",previewUrl:R,base64:y,mediaType:v,name:s.name})}else if(tt(v)){const y=await ue(s);e.value.push({id:ne(),kind:"document",data:y,sourceType:"base64",name:s.name})}else if(et(v)||st(s.name)){const y=await Ze(s);e.value.push({id:ne(),kind:"document",data:y,sourceType:"text",name:s.name})}else o.add({title:"Unsupported file type",description:`${s.name} (${v||"unknown type"})`,color:"error"})}catch{o.add({title:"Failed to read file",description:s.name,color:"error"})}}}function f(a){const s=e.value.findIndex(v=>v.id===a);if(s!==-1){const v=e.value[s];v.kind==="image"&&URL.revokeObjectURL(v.previewUrl),e.value.splice(s,1)}}function j(){for(const a of e.value)a.kind==="image"&&URL.revokeObjectURL(a.previewUrl);e.value=[]}function h(){return e.value.filter(a=>a.kind==="image").map(a=>({type:"image",source:{type:"base64",media_type:a.mediaType,data:a.base64}}))}function $(){return e.value.filter(a=>a.kind==="document").map(a=>({type:"document",source:a.sourceType==="base64"?{type:"base64",media_type:"application/pdf",data:a.data}:{type:"text",media_type:"text/plain",data:a.data},title:a.name}))}return{attachments:P(e),addFiles:m,removeAttachment:f,clearAttachments:j,toImageBlocks:h,toDocumentBlocks:$}}function st(e){const o=e.split(".").pop()?.toLowerCase();return o?new Set(["txt","md","js","ts","jsx","tsx","py","rb","rs","go","java","c","cpp","h","hpp","cs","swift","kt","scala","json","yaml","yml","toml","ini","cfg","conf","xml","html","htm","css","scss","sass","less","sh","bash","zsh","fish","ps1","bat","cmd","sql","graphql","gql","proto","csv","tsv","log","env","gitignore","dockerignore","vue","svelte","astro","prisma","tf","r","lua","dart"]).has(o):!1}const at={key:0,class:"absolute inset-0 bg-primary/10 border-2 border-dashed border-primary rounded-lg flex items-center justify-center z-10"},ot={key:1,class:"flex items-center gap-2 mb-2 text-xs text-dimmed"},it={key:2,class:"flex gap-2 mb-2 flex-wrap"},lt=["src","alt"],rt={class:"text-xs truncate max-w-24"},ct=["onClick"],ut={class:"flex items-start gap-2"},dt=["disabled"],mt=["accept"],pt=Q({__name:"ChatInput",props:{sessionStatus:{},connectionStatus:{}},emits:["send","interrupt"],setup(e,{emit:o}){const m=e,f=o,{attachments:j,addFiles:h,removeAttachment:$,clearAttachments:a,toImageBlocks:s,toDocumentBlocks:v}=nt(),y=k(""),R=k(null),t=k(null),u=k(!1),r=L(()=>m.sessionStatus==="streaming"),C=L(()=>m.connectionStatus==="connected"),O=L(()=>C.value&&!r.value&&(y.value.trim().length>0||j.value.length>0));function i(g){g.key==="Enter"&&!g.shiftKey&&(g.preventDefault(),p())}function p(){if(!O.value)return;const g=s(),d=v();f("send",y.value.trim(),g.length>0?g:void 0,d.length>0?d:void 0),y.value="",a(),xe(()=>{R.value&&(R.value.style.height="auto")})}function _(g){const d=g.target;d.style.height="auto",d.style.height=Math.min(d.scrollHeight,200)+"px"}function U(g){const d=Array.from(g.clipboardData?.files||[]);d.length>0&&(g.preventDefault(),h(d))}function I(g){g.preventDefault(),u.value=!0}function S(){u.value=!1}function ee(g){g.preventDefault(),u.value=!1;const d=Array.from(g.dataTransfer?.files||[]);d.length>0&&h(d)}function b(g){const d=g.target;d.files?.length&&h(d.files),d.value=""}const K=["image/jpeg","image/png","image/gif","image/webp","application/pdf",".txt",".md",".js",".ts",".jsx",".tsx",".py",".rb",".rs",".go",".java",".c",".cpp",".h",".cs",".swift",".kt",".json",".yaml",".yml",".toml",".ini",".xml",".html",".css",".scss",".sh",".sql",".graphql",".csv",".log",".vue",".svelte",".prisma",".lua",".dart"].join(",");return(g,d)=>{const re=le,te=he;return n(),l("div",{class:"border-t border-default p-4 relative",onDragover:I,onDragleave:S,onDrop:ee},[c(u)?(n(),l("div",at,[...d[3]||(d[3]=[x("span",{class:"text-sm text-primary font-medium"},"Drop files here",-1)])])):w("",!0),c(C)?w("",!0):(n(),l("div",ot,[d[4]||(d[4]=x("span",{class:"size-2 rounded-full bg-warning"},null,-1)),x("span",null,z(e.connectionStatus==="connecting"?"Connecting...":"Disconnected"),1)])),c(j).length?(n(),l("div",it,[(n(!0),l(W,null,Y(c(j),T=>(n(),l("div",{key:T.id,class:X(["relative group rounded-lg overflow-hidden border border-default",T.kind==="image"?"size-16":"h-10 px-3 flex items-center gap-1.5 bg-elevated/50"])},[T.kind==="image"?(n(),l("img",{key:0,src:T.previewUrl,alt:T.name,class:"size-full object-cover"},null,8,lt)):(n(),l(W,{key:1},[B(re,{name:T.name.endsWith(".pdf")?"i-lucide-file-text":"i-lucide-file-code",class:"size-4 text-dimmed shrink-0"},null,8,["name"]),x("span",rt,z(T.name),1)],64)),x("button",{class:"absolute top-0 right-0 p-0.5 bg-error/80 rounded-bl-lg opacity-0 group-hover:opacity-100 transition-opacity",onClick:vt=>c($)(T.id)},[B(re,{name:"i-lucide-x",class:"size-3 text-white"})],8,ct)],2))),128))])):w("",!0),x("div",ut,[ve(x("textarea",{ref_key:"textareaRef",ref:R,"onUpdate:modelValue":d[0]||(d[0]=T=>ie(y)?y.value=T:null),disabled:!c(C)||c(r),placeholder:"Send a message...",rows:"1",class:"flex-1 resize-none bg-elevated/50 border border-default rounded-lg px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-primary/50 disabled:opacity-50",onKeydown:i,onInput:_,onPaste:U},null,40,dt),[[ge,c(y)]]),x("input",{ref_key:"fileInputRef",ref:t,type:"file",accept:c(K),multiple:"",class:"hidden",onChange:b},null,40,mt),B(te,{icon:"i-lucide-paperclip",variant:"ghost",color:"neutral",size:"md",disabled:!c(C)||c(r),onClick:d[1]||(d[1]=T=>c(t)?.click())},null,8,["disabled"]),c(r)?(n(),M(te,{key:0,icon:"i-lucide-square",color:"error",variant:"soft",size:"md",onClick:d[2]||(d[2]=T=>f("interrupt"))})):(n(),M(te,{key:1,icon:"i-lucide-send",color:"primary",disabled:!c(O),size:"md",onClick:p},null,8,["disabled"]))])],32)}}}),$t=Object.assign(pt,{__name:"ChatInput"});function se(){if(typeof crypto<"u"&&crypto.randomUUID)return crypto.randomUUID();const e=new Uint8Array(16);crypto.getRandomValues(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128;const o=Array.from(e,m=>m.toString(16).padStart(2,"0")).join("");return`${o.slice(0,8)}-${o.slice(8,12)}-${o.slice(12,16)}-${o.slice(16,20)}-${o.slice(20)}`}const N=k("disconnected"),q=k("idle"),F=k(null),V=k([]),G=k([]),A=k(""),E=k({}),de=k(0),ae=k(!1),D=k(null),Z=k(0),ft=5;let oe=!1,J=null;function jt(){function e(){return`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}/_ws/chat`}function o(t){switch(t.type){case"chat:session_created":F.value=t.conversationId,y();break;case"chat:stream_start":q.value="streaming",A.value="",E.value={};break;case"chat:text_delta":A.value+=t.delta;break;case"chat:tool_start":E.value={...E.value,[t.toolUseId]:{name:t.toolName}};break;case"chat:tool_end":{const u=E.value[t.toolUseId];u&&(E.value={...E.value,[t.toolUseId]:{...u,result:t.result,isError:t.isError}});break}case"chat:stream_end":{q.value="idle",de.value=t.costUsd;const u=[];A.value&&u.push({type:"text",text:A.value});for(const[r,C]of Object.entries(E.value))u.push({type:"tool_use",id:r,name:C.name,input:{}}),C.result!==void 0&&u.push({type:"tool_result",tool_use_id:r,content:C.result,is_error:C.isError});u.length>0&&V.value.push({id:se(),conversationId:t.conversationId,role:"assistant",content:u,costUsd:t.costUsd,durationMs:t.durationMs,createdAt:new Date}),A.value="",E.value={},y();break}case"chat:error":q.value="error",console.error("[chat] Server error:",t.message);break;case"chat:interrupted":q.value="interrupted",A.value&&(V.value.push({id:se(),conversationId:t.conversationId,role:"assistant",content:[{type:"text",text:A.value}],createdAt:new Date}),A.value="",E.value={});break}}function m(){if(D.value?.readyState===WebSocket.OPEN||oe&&N.value==="connecting")return;oe=!0,N.value="connecting";const t=new WebSocket(e());D.value=t,t.onopen=()=>{N.value="connected",Z.value=0,j()},t.onmessage=u=>{try{const r=JSON.parse(u.data);if(r.type==="chat:connected"||r.type==="pong")return;o(r)}catch(r){console.error("[chat] Failed to parse message:",r)}},t.onclose=()=>{N.value="disconnected",h(),Z.value<ft&&(Z.value++,setTimeout(m,2e3*Z.value))},t.onerror=()=>{N.value="error"}}function f(){h(),D.value&&(D.value.close(),D.value=null),N.value="disconnected",oe=!1}function j(){J&&clearInterval(J),J=we(()=>{D.value?.readyState===WebSocket.OPEN&&D.value.send(JSON.stringify({type:"ping"}))},3e4)}function h(){J&&(clearInterval(J),J=null)}function $(t,u,r){if(!D.value||D.value.readyState!==WebSocket.OPEN)return;const C=[];if(u?.length)for(const O of u)C.push(O);if(r?.length)for(const O of r)C.push(O);t&&C.push({type:"text",text:t}),V.value.push({id:se(),conversationId:F.value||"",role:"user",content:C,createdAt:new Date}),D.value.send(JSON.stringify({type:"chat:send",message:t,attachments:u?.length?u:void 0,documents:r?.length?r:void 0,conversationId:F.value}))}function a(){!D.value||!F.value||D.value.send(JSON.stringify({type:"chat:interrupt",conversationId:F.value}))}function s(){F.value=null,V.value=[],q.value="idle",A.value="",E.value={}}async function v(t){ae.value=!0;try{const u=await $fetch(`/api/conversations/${t}`);F.value=t,V.value=(u.data.messages||[]).map(r=>({...r,createdAt:new Date(r.createdAt)})),q.value="idle"}catch(u){console.error("[chat] Failed to load conversation:",u)}finally{ae.value=!1}}async function y(){try{const t=await $fetch("/api/conversations");G.value=t.data}catch(t){console.error("[chat] Failed to load conversations:",t)}}async function R(t){if(!G.value.find(r=>r.id===t)?.isMain)try{await $fetch(`/api/conversations/${t}`,{method:"DELETE"}),G.value=G.value.filter(r=>r.id!==t),F.value===t&&s()}catch(r){console.error("[chat] Failed to delete conversation:",r)}}return{connectionStatus:P(N),sessionStatus:P(q),activeConversationId:P(F),messages:V,conversations:G,streamingText:P(A),streamingToolCalls:P(E),lastCostUsd:P(de),loading:P(ae),connect:m,disconnect:f,sendMessage:$,interrupt:a,startNewConversation:s,loadConversation:v,loadConversations:y,deleteConversation:R}}export{wt as _,Ct as a,$t as b,jt as u};
@@ -1 +1 @@
1
- import{d as V,c as v,o as s,w as r,ac as c,M as m,aa as C,af as g,Z as a,ab as y,_ as D,a as i,ao as $,a0 as M,aj as it,bh as st,e as b,f as lt,C as ct,ak as rt,al as T,am as j}from"./CGgHmnnS.js";import{_ as ut}from"./w3RSHXA6.js";import{_ as dt,a as mt}from"./81-iumfM.js";import{u as gt,_ as pt,a as ft,b as _t}from"./DoSrePUc.js";import{a as vt}from"./B8na0pik.js";import{_ as yt}from"./NNQizITf.js";import{_ as ht}from"./D5AjrkGO.js";import{_ as At}from"./B3TXSB_R.js";import{g as xt,b as kt,a as bt}from"./B6lDOV4_.js";import{_ as Ct}from"./Dc_VwXJs.js";import{u as wt}from"./CcJ0pNID.js";import{u as $t}from"./CIMG8oEU.js";import"./C8ut0f5H.js";import"./CqkleIqs.js";import"./CZ5B974o.js";import"./pFPRVtL-.js";import"./CD6r4z4e.js";import"./B8fLdQfp.js";import"./CxNJcty6.js";import"./DlAUqK2U.js";import"./Ehiy7Wkv.js";import"./BGV4_re9.js";import"./CPb6IrVT.js";import"./C7Wu2u5C.js";import"./Cj3gDP-y.js";import"./CNB4wNeh.js";import"./DIMnGgEU.js";import"./B02JOKtW.js";import"./DEmzTuCa.js";import"./6k0gxaWW.js";import"./CZQeFnOf.js";import"./Suor9Vto.js";import"./BTImkTzA.js";import"./BtVAOj3K.js";import"./BGa5KqPj.js";import"./C4Ii8cYC.js";import"./C6Y-ieo6.js";import"./d85YwuyC.js";import"./ByXbV9Xa.js";import"./D_1GDAlv.js";import"./Vcq4gwWv.js";import"./P3qGksT8.js";import"./D57E8FC4.js";import"./rVZcJ6Pz.js";import"./CnB-ybCZ.js";const St={class:"flex items-start justify-between gap-4"},Ut={class:"flex-1 min-w-0"},Rt={class:"flex items-center gap-2"},Bt={class:"font-medium truncate"},Nt={key:0,class:"text-sm text-muted truncate mt-1"},Ft={class:"flex items-center gap-4 mt-2 text-sm text-muted"},zt={class:"flex items-center gap-1"},Et={key:0,class:"flex items-center gap-1"},Pt={key:1,class:"flex items-center gap-1"},Tt={class:"flex items-center gap-2"},jt=V({__name:"AgentCard",props:{agent:{},running:{type:Boolean}},emits:["toggle","run","cancel","edit","navigate"],setup(t,{emit:u}){const p=u;return(S,o)=>{const h=D,w=yt,U=ht,x=M,R=At;return s(),v(R,{class:"cursor-pointer transition-all hover:ring-2 hover:ring-primary/50",onClick:o[5]||(o[5]=d=>p("navigate",t.agent))},{default:r(()=>[c("div",St,[c("div",Ut,[c("div",Rt,[c("h3",Bt,g(t.agent.name),1),t.running?(s(),v(w,{key:0,color:"info",variant:"subtle",size:"sm"},{default:r(()=>[a(h,{name:"i-lucide-loader-2",class:"w-3 h-3 animate-spin mr-1"}),o[6]||(o[6]=y(" Running ",-1))]),_:1})):t.agent.lastStatus?(s(),v(w,{key:1,color:i(xt)(t.agent.lastStatus),size:"sm"},{default:r(()=>[y(g(t.agent.lastStatus),1)]),_:1},8,["color"])):C("",!0)]),t.agent.description?(s(),m("p",Nt,g(t.agent.description),1)):C("",!0),c("div",Ft,[c("span",zt,[a(h,{name:"i-lucide-clock"}),y(" "+g(i(kt)(t.agent.schedule)),1)]),t.agent.lastRunAt?(s(),m("span",Et,[a(h,{name:"i-lucide-activity"}),y(" "+g(i(bt)(t.agent.lastRunAt)),1)])):C("",!0),t.agent.maxBudgetUsd?(s(),m("span",Pt,[a(h,{name:"i-lucide-dollar-sign"}),y(" $"+g(t.agent.maxBudgetUsd)+" limit ",1)])):C("",!0)])]),c("div",Tt,[a(U,{"model-value":t.agent.enabled,onClick:o[0]||(o[0]=$(()=>{},["stop"])),"onUpdate:modelValue":o[1]||(o[1]=d=>p("toggle",t.agent.id))},null,8,["model-value"]),t.running?(s(),v(x,{key:0,icon:"i-lucide-square",variant:"ghost",size:"sm",color:"error",onClick:o[2]||(o[2]=$(d=>p("cancel",t.agent.id,d),["stop"]))})):(s(),v(x,{key:1,icon:"i-lucide-play",variant:"ghost",size:"sm",disabled:!t.agent.enabled,onClick:o[3]||(o[3]=$(d=>p("run",t.agent.id,d),["stop"]))},null,8,["disabled"])),a(x,{icon:"i-lucide-pencil",variant:"ghost",size:"sm",onClick:o[4]||(o[4]=$(d=>p("edit",t.agent,d),["stop"]))})])])]),_:1})}}}),Vt=Object.assign(jt,{__name:"AgentsAgentCard"}),Dt=vt(_t),Mt={class:"contents"},Ot={class:"p-4 space-y-6"},Gt={key:1,class:"flex items-center justify-center h-64"},It={key:2,class:"flex flex-col items-center justify-center h-64 text-neutral-500"},Lt={key:3,class:"space-y-4"},je=V({__name:"index",setup(t){const u=it(),p=st(),{agents:S,loading:o,fetchAgents:h,createAgent:w,updateAgent:U,toggleEnabled:x,runAgent:R,cancelAgent:d,fetchGlobalStats:O}=gt(),{isAgentRunning:G}=wt(),{agentStatsPeriod:z}=$t(),k=b(z.value),A=b(null),B=b(!1);function I(n){return G(n)?!0:A.value?.runningAgentIds?.includes(n)??!1}const f=b(!1),_=b(null),L=[{label:"24h",value:"24h"},{label:"7d",value:"7d"},{label:"30d",value:"30d"}];function E(){_.value=null,f.value=!0}function q(n,e){e.stopPropagation(),_.value=n,f.value=!0}function Z(n){p.push(`/agents/${n.id}`)}async function H(n){try{_.value?(await U(_.value.id,n),u.add({title:"Agent updated",color:"success",icon:"i-lucide-check"})):(await w(n),u.add({title:"Agent created",color:"success",icon:"i-lucide-check"}),N()),f.value=!1,_.value=null}catch(e){u.add({title:"Failed to save agent",description:e instanceof Error?e.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}}async function J(n){try{await x(n)}catch{u.add({title:"Failed to toggle agent",color:"error",icon:"i-lucide-alert-circle"})}}async function K(n,e){e.stopPropagation();try{await R(n)}catch{u.add({title:"Failed to run agent",color:"error",icon:"i-lucide-alert-circle"})}}async function Q(n,e){e.stopPropagation();try{await d(n),u.add({title:"Agent cancelled",color:"warning",icon:"i-lucide-x-circle"})}catch{u.add({title:"Failed to cancel agent",color:"error",icon:"i-lucide-alert-circle"})}}async function N(){B.value=!0;try{A.value=await O(k.value)}catch{}finally{B.value=!1}}return lt(k,n=>{z.value=n,N()}),ct(async()=>{await h(),N()}),(n,e)=>{const F=M,W=ut,X=mt,Y=pt,tt=Dt,P=D,et=Vt,nt=dt,at=ft,ot=Ct;return s(),m("div",Mt,[a(nt,{id:"agents",grow:""},{header:r(()=>[a(X,{title:"Scheduled Agents"},{right:r(()=>[a(W,null,{default:r(()=>[(s(),m(T,null,j(L,l=>a(F,{key:l.value,color:i(k)===l.value?"primary":"neutral",variant:i(k)===l.value?"solid":"ghost",size:"sm",onClick:qt=>k.value=l.value},{default:r(()=>[y(g(l.label),1)]),_:2},1032,["color","variant","onClick"])),64))]),_:1}),a(F,{icon:"i-lucide-plus",label:"New Agent",onClick:E})]),_:1})]),body:r(()=>[c("div",Ot,[a(Y,{stats:i(A),loading:i(B),variant:"global"},null,8,["stats","loading"]),i(A)&&i(A).dailyRuns.length>0?(s(),v(tt,{key:0,data:i(A).dailyRuns,title:"Run Activity"},null,8,["data"])):C("",!0),i(o)?(s(),m("div",Gt,[a(P,{name:"i-lucide-loader-2",class:"w-8 h-8 animate-spin text-neutral-400"})])):i(S).length===0?(s(),m("div",It,[a(P,{name:"i-lucide-bot",class:"w-12 h-12 mb-4"}),e[2]||(e[2]=c("p",{class:"text-lg font-medium"}," No agents yet ",-1)),e[3]||(e[3]=c("p",{class:"text-sm"}," Create your first scheduled agent to automate tasks ",-1)),a(F,{class:"mt-4",icon:"i-lucide-plus",label:"Create Agent",onClick:E})])):(s(),m("div",Lt,[e[4]||(e[4]=c("h2",{class:"text-lg font-semibold"}," Agents ",-1)),(s(!0),m(T,null,j(i(S),l=>(s(),v(et,{key:l.id,agent:l,running:I(l.id),onToggle:J,onRun:K,onCancel:Q,onEdit:q,onNavigate:Z},null,8,["agent","running"]))),128))]))])]),_:1}),a(ot,{open:i(f),"onUpdate:open":e[1]||(e[1]=l=>rt(f)?f.value=l:null)},{title:r(()=>[y(g(i(_)?"Edit Agent":"New Agent"),1)]),body:r(()=>[a(at,{agent:i(_),onSubmit:H,onCancel:e[0]||(e[0]=l=>f.value=!1)},null,8,["agent"])]),_:1},8,["open"])])}}});export{je as default};
1
+ import{d as V,c as v,o as s,w as r,ac as c,M as m,aa as C,af as g,Z as a,ab as y,_ as D,a as i,ao as $,a0 as M,aj as it,bh as st,e as b,f as lt,C as ct,ak as rt,al as T,am as j}from"./B06CcGVK.js";import{_ as ut}from"./CTXxmwx3.js";import{_ as dt,a as mt}from"./CoUQ3qpL.js";import{u as gt,_ as pt,a as ft,b as _t}from"./CzxGRepV.js";import{a as vt}from"./DKHJBr2m.js";import{_ as yt}from"./CGTQGJ_c.js";import{_ as ht}from"./C4ui9LWq.js";import{_ as At}from"./CkfP4uja.js";import{g as xt,b as kt,a as bt}from"./B6lDOV4_.js";import{_ as Ct}from"./BZ3u3Znq.js";import{u as wt}from"./B0YLhHra.js";import{u as $t}from"./CV92g0qz.js";import"./C8ut0f5H.js";import"./CqkleIqs.js";import"./Dc8vLBQN.js";import"./hkCaWCzP.js";import"./DH2yWNbZ.js";import"./BVNZYpXH.js";import"./-XfM4jpu.js";import"./DlAUqK2U.js";import"./CHd8mdNy.js";import"./BQeDYnyj.js";import"./CopZwjN8.js";import"./CamCmKfq.js";import"./DY78sr_b.js";import"./0L-9iIbm.js";import"./BuURpKT4.js";import"./CTJDAjdO.js";import"./BGytjslk.js";import"./CXRkSVkD.js";import"./BIoHE1oQ.js";import"./B0v0agy0.js";import"./DhIZvLeI.js";import"./CHn6tbtE.js";import"./Ds97nj0P.js";import"./5qkiDtwf.js";import"./C6Y-ieo6.js";import"./olSL1K5t.js";import"./Cwel2ykQ.js";import"./DEl5RR7R.js";import"./Vcq4gwWv.js";import"./DnfG5RzJ.js";import"./Tirj2rC0.js";import"./CiQJYbKL.js";import"./B9sXHKws.js";const St={class:"flex items-start justify-between gap-4"},Ut={class:"flex-1 min-w-0"},Rt={class:"flex items-center gap-2"},Bt={class:"font-medium truncate"},Nt={key:0,class:"text-sm text-muted truncate mt-1"},Ft={class:"flex items-center gap-4 mt-2 text-sm text-muted"},zt={class:"flex items-center gap-1"},Et={key:0,class:"flex items-center gap-1"},Pt={key:1,class:"flex items-center gap-1"},Tt={class:"flex items-center gap-2"},jt=V({__name:"AgentCard",props:{agent:{},running:{type:Boolean}},emits:["toggle","run","cancel","edit","navigate"],setup(t,{emit:u}){const p=u;return(S,o)=>{const h=D,w=yt,U=ht,x=M,R=At;return s(),v(R,{class:"cursor-pointer transition-all hover:ring-2 hover:ring-primary/50",onClick:o[5]||(o[5]=d=>p("navigate",t.agent))},{default:r(()=>[c("div",St,[c("div",Ut,[c("div",Rt,[c("h3",Bt,g(t.agent.name),1),t.running?(s(),v(w,{key:0,color:"info",variant:"subtle",size:"sm"},{default:r(()=>[a(h,{name:"i-lucide-loader-2",class:"w-3 h-3 animate-spin mr-1"}),o[6]||(o[6]=y(" Running ",-1))]),_:1})):t.agent.lastStatus?(s(),v(w,{key:1,color:i(xt)(t.agent.lastStatus),size:"sm"},{default:r(()=>[y(g(t.agent.lastStatus),1)]),_:1},8,["color"])):C("",!0)]),t.agent.description?(s(),m("p",Nt,g(t.agent.description),1)):C("",!0),c("div",Ft,[c("span",zt,[a(h,{name:"i-lucide-clock"}),y(" "+g(i(kt)(t.agent.schedule)),1)]),t.agent.lastRunAt?(s(),m("span",Et,[a(h,{name:"i-lucide-activity"}),y(" "+g(i(bt)(t.agent.lastRunAt)),1)])):C("",!0),t.agent.maxBudgetUsd?(s(),m("span",Pt,[a(h,{name:"i-lucide-dollar-sign"}),y(" $"+g(t.agent.maxBudgetUsd)+" limit ",1)])):C("",!0)])]),c("div",Tt,[a(U,{"model-value":t.agent.enabled,onClick:o[0]||(o[0]=$(()=>{},["stop"])),"onUpdate:modelValue":o[1]||(o[1]=d=>p("toggle",t.agent.id))},null,8,["model-value"]),t.running?(s(),v(x,{key:0,icon:"i-lucide-square",variant:"ghost",size:"sm",color:"error",onClick:o[2]||(o[2]=$(d=>p("cancel",t.agent.id,d),["stop"]))})):(s(),v(x,{key:1,icon:"i-lucide-play",variant:"ghost",size:"sm",disabled:!t.agent.enabled,onClick:o[3]||(o[3]=$(d=>p("run",t.agent.id,d),["stop"]))},null,8,["disabled"])),a(x,{icon:"i-lucide-pencil",variant:"ghost",size:"sm",onClick:o[4]||(o[4]=$(d=>p("edit",t.agent,d),["stop"]))})])])]),_:1})}}}),Vt=Object.assign(jt,{__name:"AgentsAgentCard"}),Dt=vt(_t),Mt={class:"contents"},Ot={class:"p-4 space-y-6"},Gt={key:1,class:"flex items-center justify-center h-64"},It={key:2,class:"flex flex-col items-center justify-center h-64 text-neutral-500"},Lt={key:3,class:"space-y-4"},je=V({__name:"index",setup(t){const u=it(),p=st(),{agents:S,loading:o,fetchAgents:h,createAgent:w,updateAgent:U,toggleEnabled:x,runAgent:R,cancelAgent:d,fetchGlobalStats:O}=gt(),{isAgentRunning:G}=wt(),{agentStatsPeriod:z}=$t(),k=b(z.value),A=b(null),B=b(!1);function I(n){return G(n)?!0:A.value?.runningAgentIds?.includes(n)??!1}const f=b(!1),_=b(null),L=[{label:"24h",value:"24h"},{label:"7d",value:"7d"},{label:"30d",value:"30d"}];function E(){_.value=null,f.value=!0}function q(n,e){e.stopPropagation(),_.value=n,f.value=!0}function Z(n){p.push(`/agents/${n.id}`)}async function H(n){try{_.value?(await U(_.value.id,n),u.add({title:"Agent updated",color:"success",icon:"i-lucide-check"})):(await w(n),u.add({title:"Agent created",color:"success",icon:"i-lucide-check"}),N()),f.value=!1,_.value=null}catch(e){u.add({title:"Failed to save agent",description:e instanceof Error?e.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}}async function J(n){try{await x(n)}catch{u.add({title:"Failed to toggle agent",color:"error",icon:"i-lucide-alert-circle"})}}async function K(n,e){e.stopPropagation();try{await R(n)}catch{u.add({title:"Failed to run agent",color:"error",icon:"i-lucide-alert-circle"})}}async function Q(n,e){e.stopPropagation();try{await d(n),u.add({title:"Agent cancelled",color:"warning",icon:"i-lucide-x-circle"})}catch{u.add({title:"Failed to cancel agent",color:"error",icon:"i-lucide-alert-circle"})}}async function N(){B.value=!0;try{A.value=await O(k.value)}catch{}finally{B.value=!1}}return lt(k,n=>{z.value=n,N()}),ct(async()=>{await h(),N()}),(n,e)=>{const F=M,W=ut,X=mt,Y=pt,tt=Dt,P=D,et=Vt,nt=dt,at=ft,ot=Ct;return s(),m("div",Mt,[a(nt,{id:"agents",grow:""},{header:r(()=>[a(X,{title:"Scheduled Agents"},{right:r(()=>[a(W,null,{default:r(()=>[(s(),m(T,null,j(L,l=>a(F,{key:l.value,color:i(k)===l.value?"primary":"neutral",variant:i(k)===l.value?"solid":"ghost",size:"sm",onClick:qt=>k.value=l.value},{default:r(()=>[y(g(l.label),1)]),_:2},1032,["color","variant","onClick"])),64))]),_:1}),a(F,{icon:"i-lucide-plus",label:"New Agent",onClick:E})]),_:1})]),body:r(()=>[c("div",Ot,[a(Y,{stats:i(A),loading:i(B),variant:"global"},null,8,["stats","loading"]),i(A)&&i(A).dailyRuns.length>0?(s(),v(tt,{key:0,data:i(A).dailyRuns,title:"Run Activity"},null,8,["data"])):C("",!0),i(o)?(s(),m("div",Gt,[a(P,{name:"i-lucide-loader-2",class:"w-8 h-8 animate-spin text-neutral-400"})])):i(S).length===0?(s(),m("div",It,[a(P,{name:"i-lucide-bot",class:"w-12 h-12 mb-4"}),e[2]||(e[2]=c("p",{class:"text-lg font-medium"}," No agents yet ",-1)),e[3]||(e[3]=c("p",{class:"text-sm"}," Create your first scheduled agent to automate tasks ",-1)),a(F,{class:"mt-4",icon:"i-lucide-plus",label:"Create Agent",onClick:E})])):(s(),m("div",Lt,[e[4]||(e[4]=c("h2",{class:"text-lg font-semibold"}," Agents ",-1)),(s(!0),m(T,null,j(i(S),l=>(s(),v(et,{key:l.id,agent:l,running:I(l.id),onToggle:J,onRun:K,onCancel:Q,onEdit:q,onNavigate:Z},null,8,["agent","running"]))),128))]))])]),_:1}),a(ot,{open:i(f),"onUpdate:open":e[1]||(e[1]=l=>rt(f)?f.value=l:null)},{title:r(()=>[y(g(i(_)?"Edit Agent":"New Agent"),1)]),body:r(()=>[a(at,{agent:i(_),onSubmit:H,onCancel:e[0]||(e[0]=l=>f.value=!1)},null,8,["agent"])]),_:1},8,["open"])])}}});export{je as default};