cognova 0.2.20 → 0.2.21

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 (170) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/{CCeM5lW2.js → -O86rjFZ.js} +1 -1
  3. package/.output/public/_nuxt/{BXxZokD_.js → -Q9J9PRu.js} +1 -1
  4. package/.output/public/_nuxt/{Hh9mv0Ek.js → 0DkCurh5.js} +1 -1
  5. package/.output/public/_nuxt/{CjJPkhbc.js → 49whOfsW.js} +1 -1
  6. package/.output/public/_nuxt/{DqR9SdeU.js → 4Vi9hKJC.js} +1 -1
  7. package/.output/public/_nuxt/{BoCU3mWu.js → 66GNa6MU.js} +1 -1
  8. package/.output/public/_nuxt/9dGxQN-2.js +1 -0
  9. package/.output/public/_nuxt/{DhlIWT8K.js → 9wWq016N.js} +1 -1
  10. package/.output/public/_nuxt/{BD5rPkc2.js → B04GYyxD.js} +1 -1
  11. package/.output/public/_nuxt/{DwrmFEZN.js → B0KPvVav.js} +1 -1
  12. package/.output/public/_nuxt/{Cywo6tZI.js → B1meh0Ci.js} +1 -1
  13. package/.output/public/_nuxt/{C5Cu9Fx6.js → B53zbEPa.js} +1 -1
  14. package/.output/public/_nuxt/{B20jNAhm.js → B6-aFDg7.js} +1 -1
  15. package/.output/public/_nuxt/{kkAMoB43.js → B6lgiDn1.js} +1 -1
  16. package/.output/public/_nuxt/{BgavRUl_.js → B7uuK82m.js} +1 -1
  17. package/.output/public/_nuxt/{BWqJInD3.js → B9OPrqTh.js} +1 -1
  18. package/.output/public/_nuxt/{DLHnP6tw.js → BA646MN4.js} +1 -1
  19. package/.output/public/_nuxt/{mzM4BGtv.js → BDhTzPPo.js} +1 -1
  20. package/.output/public/_nuxt/{CZNOaqeX.js → BDzVzzBM.js} +1 -1
  21. package/.output/public/_nuxt/{DTlSLSo1.js → BEkFNtxw.js} +3 -3
  22. package/.output/public/_nuxt/{B_hNqC64.js → BI7-RNYV.js} +1 -1
  23. package/.output/public/_nuxt/{rIgg2Arf.js → BN8XazaH.js} +3 -3
  24. package/.output/public/_nuxt/{TSYrPbLR.js → BNP0kT7B.js} +1 -1
  25. package/.output/public/_nuxt/{BhhMUror.js → BPfVf7kt.js} +1 -1
  26. package/.output/public/_nuxt/{BxsQlbgl.js → BQGDi8tM.js} +1 -1
  27. package/.output/public/_nuxt/{Br6epbzY.js → BUXewbUG.js} +1 -1
  28. package/.output/public/_nuxt/{Y59XKprr.js → BW0FZi7D.js} +1 -1
  29. package/.output/public/_nuxt/{Br81Sr2R.js → BXmijQzM.js} +1 -1
  30. package/.output/public/_nuxt/{C-78dDNd.js → BZFf3mr_.js} +1 -1
  31. package/.output/public/_nuxt/{C7hFztZL.js → BZx0xqxG.js} +1 -1
  32. package/.output/public/_nuxt/{DjsqyRqt.js → BbElT9yG.js} +1 -1
  33. package/.output/public/_nuxt/{BHUy5EAj.js → BjyHtuwq.js} +1 -1
  34. package/.output/public/_nuxt/{C4sG6rdW.js → BnfOmQBX.js} +1 -1
  35. package/.output/public/_nuxt/BoqEl-F1.js +1 -0
  36. package/.output/public/_nuxt/{C_A_NkeC.js → Bq2pktu_.js} +2 -2
  37. package/.output/public/_nuxt/{C2Gh3qqr.js → Br712gOY.js} +1 -1
  38. package/.output/public/_nuxt/{PamJNol9.js → Bs4sk8vv.js} +1 -1
  39. package/.output/public/_nuxt/{DL4EpgqQ.js → Bt87rSlM.js} +1 -1
  40. package/.output/public/_nuxt/{DFTEBTzZ.js → BtOA13zl.js} +1 -1
  41. package/.output/public/_nuxt/{TNpdJOlc.js → Bti4Nb4c.js} +1 -1
  42. package/.output/public/_nuxt/{BZ7DAtPi.js → Bu0HhyZq.js} +1 -1
  43. package/.output/public/_nuxt/{D867g6Ds.js → Bv25Wgb9.js} +1 -1
  44. package/.output/public/_nuxt/{CqS0zXYQ.js → BwMPB_Mu.js} +1 -1
  45. package/.output/public/_nuxt/{CS8SdmH2.js → BzkqPhn-.js} +1 -1
  46. package/.output/public/_nuxt/{BZm9w7en.js → C35LJkds.js} +1 -1
  47. package/.output/public/_nuxt/{DcJ0GstJ.js → C4VW2EjN.js} +1 -1
  48. package/.output/public/_nuxt/{C2-_hcwB.js → C6FzuEFH.js} +1 -1
  49. package/.output/public/_nuxt/{X0o5GcBb.js → C866FgGj.js} +1 -1
  50. package/.output/public/_nuxt/{BOCn_SGf.js → CBqC92gC.js} +3 -3
  51. package/.output/public/_nuxt/{D49P2RhG.js → CD2Wt775.js} +1 -1
  52. package/.output/public/_nuxt/{BzrhNhdT.js → CE491BHV.js} +1 -1
  53. package/.output/public/_nuxt/{BAY3_Hrq.js → CF8ziKf1.js} +1 -1
  54. package/.output/public/_nuxt/{B3OpTH_e.js → CFE6wnRK.js} +1 -1
  55. package/.output/public/_nuxt/{BVYYP4eQ.js → CFjVdIUR.js} +1 -1
  56. package/.output/public/_nuxt/{Dsuag_iW.js → CGPn0bIO.js} +1 -1
  57. package/.output/public/_nuxt/{BtrNCc2S.js → CKSWEIag.js} +1 -1
  58. package/.output/public/_nuxt/{BgIS9_ti.js → CL9cB3YW.js} +1 -1
  59. package/.output/public/_nuxt/{BWQ7zE01.js → CLUsxCN7.js} +1 -1
  60. package/.output/public/_nuxt/{CVVtVzXC.js → CM5aLXsq.js} +1 -1
  61. package/.output/public/_nuxt/{DZikIgHK.js → CN_jZBEh.js} +1 -1
  62. package/.output/public/_nuxt/{B-yW4SD3.js → CNgf0D2d.js} +1 -1
  63. package/.output/public/_nuxt/{CHbHVtCy.js → CPYFvNZ2.js} +1 -1
  64. package/.output/public/_nuxt/{PY5EGujn.js → CQTD64un.js} +1 -1
  65. package/.output/public/_nuxt/{DpSM97eH.js → CRLO8tx3.js} +1 -1
  66. package/.output/public/_nuxt/{DxE8r3r4.js → CTIUqf4N.js} +1 -1
  67. package/.output/public/_nuxt/{CLNcmNQS.js → CUDpi0L3.js} +1 -1
  68. package/.output/public/_nuxt/{C_doutX-.js → CY4SEsrB.js} +1 -1
  69. package/.output/public/_nuxt/{LR0kCjbe.js → CYAPNNGW.js} +1 -1
  70. package/.output/public/_nuxt/{CHnVFnBW.js → CZV2u8Xx.js} +1 -1
  71. package/.output/public/_nuxt/{CAVUAxNU.js → C_TYqFbT.js} +1 -1
  72. package/.output/public/_nuxt/{D3cEeQh7.js → CdIGoC9r.js} +1 -1
  73. package/.output/public/_nuxt/{U-eBrbR4.js → CiPQXVBy.js} +1 -1
  74. package/.output/public/_nuxt/{DEFWIjWl.js → Cif20myG.js} +1 -1
  75. package/.output/public/_nuxt/{DNAMjHbb.js → Ck1KJ2HV.js} +1 -1
  76. package/.output/public/_nuxt/{Cet4T_yO.js → CkSyHzm-.js} +1 -1
  77. package/.output/public/_nuxt/{CuvkTsqs.js → ClKTC8bU.js} +1 -1
  78. package/.output/public/_nuxt/CltqyXO5.js +1 -0
  79. package/.output/public/_nuxt/{BS1t375R.js → CmuSeGko.js} +1 -1
  80. package/.output/public/_nuxt/{CkrW8sGL.js → Cn_NBSuo.js} +1 -1
  81. package/.output/public/_nuxt/{C2OHaW6l.js → CvUov1Ey.js} +1 -1
  82. package/.output/public/_nuxt/{BQi8LIrn.js → CwY5tLRb.js} +1 -1
  83. package/.output/public/_nuxt/{C3xzleKP.js → CwoQ23uO.js} +1 -1
  84. package/.output/public/_nuxt/{1wCoXZ14.js → Cwoe6TAi.js} +1 -1
  85. package/.output/public/_nuxt/{CbDLhrNA.js → CxTuME0Z.js} +2 -2
  86. package/.output/public/_nuxt/{BGYoW3kO.js → Cyjm1APH.js} +1 -1
  87. package/.output/public/_nuxt/{C6Eoiclo.js → Cyo4VJ6S.js} +1 -1
  88. package/.output/public/_nuxt/{Be47YE2L.js → D-WxGaym.js} +1 -1
  89. package/.output/public/_nuxt/{0GqCtQ9S.js → D0SYimTY.js} +1 -1
  90. package/.output/public/_nuxt/{G_CsVlOR.js → D82AhPdI.js} +1 -1
  91. package/.output/public/_nuxt/{DVdnhfXT.js → D9dLxr1_.js} +1 -1
  92. package/.output/public/_nuxt/{C3szZmvA.js → D9jU4ocP.js} +1 -1
  93. package/.output/public/_nuxt/{C1oaoi1p.js → DAQeLqQw.js} +1 -1
  94. package/.output/public/_nuxt/{DM20WaLq.js → DDg2H-HK.js} +1 -1
  95. package/.output/public/_nuxt/{Co0UxVsx.js → DESvLlSI.js} +1 -1
  96. package/.output/public/_nuxt/{B9_vmatf.js → DFSB3QxC.js} +1 -1
  97. package/.output/public/_nuxt/{RlvwEbHv.js → DFqzAgzP.js} +1 -1
  98. package/.output/public/_nuxt/{Bj5e7QPz.js → DJuYHeIc.js} +1 -1
  99. package/.output/public/_nuxt/{D1reIfpX.js → DK0AJoGL.js} +1 -1
  100. package/.output/public/_nuxt/{XQNzmQy9.js → DQdWxVax.js} +1 -1
  101. package/.output/public/_nuxt/{z-MP0bB7.js → DRF-DnQg.js} +1 -1
  102. package/.output/public/_nuxt/{hCeWb_38.js → DUf0f355.js} +1 -1
  103. package/.output/public/_nuxt/{jTT1R-Vz.js → DWnLv2oh.js} +1 -1
  104. package/.output/public/_nuxt/{vCFAHwdt.js → DXkvGTEB.js} +1 -1
  105. package/.output/public/_nuxt/{CePKCqSb.js → DZncVjYt.js} +1 -1
  106. package/.output/public/_nuxt/{jC4pIK1p.js → DaAG12aj.js} +1 -1
  107. package/.output/public/_nuxt/{D2edadpd.js → Db66Rsfj.js} +1 -1
  108. package/.output/public/_nuxt/{B9Y3_B5G.js → DbLjznUU.js} +1 -1
  109. package/.output/public/_nuxt/{CxMuZEwX.js → Dfzca1IN.js} +1 -1
  110. package/.output/public/_nuxt/{MYeLvJGV.js → DhvuBruY.js} +1 -1
  111. package/.output/public/_nuxt/{Daf2MbWG.js → Dj9yr6QC.js} +1 -1
  112. package/.output/public/_nuxt/{_-TGPiLQ.js → DjJn4g73.js} +1 -1
  113. package/.output/public/_nuxt/{2J1KxdHv.js → DkAUrkyD.js} +1 -1
  114. package/.output/public/_nuxt/{DhN3_DYH.js → DkybthvX.js} +1 -1
  115. package/.output/public/_nuxt/{CkZT4LGq.js → DlNwSYeM.js} +1 -1
  116. package/.output/public/_nuxt/{pwJTkIQ4.js → Dm5HyQgM.js} +1 -1
  117. package/.output/public/_nuxt/{t8B72leH.js → Dn7zgQZh.js} +1 -1
  118. package/.output/public/_nuxt/{D41A2mE2.js → DoIqoxBH.js} +1 -1
  119. package/.output/public/_nuxt/{Bnn59-FS.js → Dqx39Omg.js} +1 -1
  120. package/.output/public/_nuxt/{8WMJQbWG.js → DrQVjmDX.js} +1 -1
  121. package/.output/public/_nuxt/{6VDUZECX.js → DuYzdzqK.js} +1 -1
  122. package/.output/public/_nuxt/{BLdMRpJD.js → DvZW6QuM.js} +1 -1
  123. package/.output/public/_nuxt/{CTGm_mc8.js → DxztGg8Y.js} +1 -1
  124. package/.output/public/_nuxt/{BTGeP1bA.js → EPFrlLUV.js} +1 -1
  125. package/.output/public/_nuxt/{hrPTRWjM.js → JsQhjNzl.js} +1 -1
  126. package/.output/public/_nuxt/{D_YGqvw_.js → NApXVVQD.js} +1 -1
  127. package/.output/public/_nuxt/{9Rw88G6h.js → OwiFxd0L.js} +1 -1
  128. package/.output/public/_nuxt/{BXdQ9ASJ.js → QAfF68DH.js} +1 -1
  129. package/.output/public/_nuxt/{CPwCTHun.js → QDt0Bhze.js} +1 -1
  130. package/.output/public/_nuxt/{DhSvBSt3.js → RF9kzKHY.js} +1 -1
  131. package/.output/public/_nuxt/{Dtr_0IbE.js → RzJhlhBq.js} +1 -1
  132. package/.output/public/_nuxt/{NKs0EGrh.js → SHHFgixe.js} +1 -1
  133. package/.output/public/_nuxt/V5ro_Ide.js +1 -0
  134. package/.output/public/_nuxt/{YZQjZgsH.js → Zge3ScOQ.js} +1 -1
  135. package/.output/public/_nuxt/{Bh0yGTzr.js → Zj8SE5Ja.js} +1 -1
  136. package/.output/public/_nuxt/{DHRexj9X.js → ZjXNlFkb.js} +1 -1
  137. package/.output/public/_nuxt/{DcYKh6QA.js → _5GQc09B.js} +1 -1
  138. package/.output/public/_nuxt/{CDcQ31Eh.js → aK4BeJQk.js} +1 -1
  139. package/.output/public/_nuxt/builds/latest.json +1 -1
  140. package/.output/public/_nuxt/builds/meta/36770554-14f7-4f3a-add8-2f51436e3d25.json +1 -0
  141. package/.output/public/_nuxt/{C5gfF7J1.js → cQU5gXxh.js} +1 -1
  142. package/.output/public/_nuxt/{CxSijT71.js → cq8AG_FV.js} +1 -1
  143. package/.output/public/_nuxt/{o-s8JBm2.js → d2FXPfMj.js} +1 -1
  144. package/.output/public/_nuxt/{UuqXScSw.js → dD3g22lS.js} +1 -1
  145. package/.output/public/_nuxt/{subdxgSQ.js → f35n4CdE.js} +1 -1
  146. package/.output/public/_nuxt/{HStC1ZyE.js → gWMUdeHB.js} +1 -1
  147. package/.output/public/_nuxt/{CTQFGHjS.js → i2HesToX.js} +1 -1
  148. package/.output/public/_nuxt/{V04-MrLN.js → iIxC-lNx.js} +1 -1
  149. package/.output/public/_nuxt/{D1uV2uir.js → nRp8uM7H.js} +1 -1
  150. package/.output/public/_nuxt/{DP8t9VWs.js → oBlsjU0k.js} +1 -1
  151. package/.output/public/_nuxt/{-mGU8_Hv.js → rH7JJqZQ.js} +1 -1
  152. package/.output/public/_nuxt/{D_k1YwXm.js → tak9pMy9.js} +1 -1
  153. package/.output/public/_nuxt/{BrkEOLHu.js → vebhRA6y.js} +1 -1
  154. package/.output/server/chunks/build/client.precomputed.mjs +1 -1
  155. package/.output/server/chunks/build/{integrations-D5JWURiJ.mjs → integrations-Hf4O1jkW.mjs} +24 -77
  156. package/.output/server/chunks/build/integrations-Hf4O1jkW.mjs.map +1 -0
  157. package/.output/server/chunks/build/server.mjs +1 -1
  158. package/.output/server/chunks/build/styles.mjs +4 -4
  159. package/.output/server/chunks/nitro/nitro.mjs +903 -996
  160. package/.output/server/package.json +1 -1
  161. package/app/pages/settings/integrations.vue +2 -23
  162. package/package.json +1 -1
  163. package/server/bridge/adapters/imessage.ts +12 -138
  164. package/shared/types/index.ts +0 -2
  165. package/.output/public/_nuxt/B9o6sFST.js +0 -1
  166. package/.output/public/_nuxt/CskGv_Km.js +0 -1
  167. package/.output/public/_nuxt/DTR31rjp.js +0 -1
  168. package/.output/public/_nuxt/Gyw_2f6x.js +0 -1
  169. package/.output/public/_nuxt/builds/meta/d528449f-50ac-4f95-b7da-122a1fdd6e85.json +0 -1
  170. package/.output/server/chunks/build/integrations-D5JWURiJ.mjs.map +0 -1
@@ -1 +1 @@
1
- import{_ as me}from"./DqR9SdeU.js";import{_ as ve}from"./9Rw88G6h.js";import{d as G,aU as re,aV as te,e as x,h as se,M as z,o as F,al as ye,Z as l,w as i,bm as ie,ak as B,a as o,ac as n,a0 as ae,ab as P,_ as J,aa as H,af as Q,i as M,C as de,c as O,$ as Z,X as he,Y as _e,U as we,W as be,ap as ue,m as ge,bD as xe,a5 as ke,aj as $e,b0 as ce,ah as Ce}from"./BOCn_SGf.js";import{_ as Fe,a as De}from"./Bnn59-FS.js";import{_ as Ue}from"./BTGeP1bA.js";import{_ as pe}from"./BzrhNhdT.js";import{_ as Te,a as Se}from"./CHnVFnBW.js";import{u as je}from"./BZm9w7en.js";import{_ as Me}from"./CZNOaqeX.js";import{_ as qe}from"./D1uV2uir.js";import{_ as Ve}from"./6VDUZECX.js";import{_ as Ie}from"./Y59XKprr.js";import{_ as Ne}from"./C4sG6rdW.js";import{_ as ze}from"./D49P2RhG.js";import{_ as Pe,a as Be}from"./DP8t9VWs.js";import{a as Ee,_ as Oe}from"./BXxZokD_.js";import{_ as Re}from"./C2Gh3qqr.js";import{i as Le,d as Ae,_ as Ke,u as He}from"./kkAMoB43.js";import{u as Qe}from"./mzM4BGtv.js";import{u as fe}from"./C-78dDNd.js";import"./hCeWb_38.js";import"./DxE8r3r4.js";import"./_-TGPiLQ.js";import"./YZQjZgsH.js";import"./DTR31rjp.js";import"./Br81Sr2R.js";import"./BWqJInD3.js";import"./DVdnhfXT.js";import"./hrPTRWjM.js";import"./CVVtVzXC.js";import"./DLHnP6tw.js";import"./D41A2mE2.js";import"./jTT1R-Vz.js";import"./DZikIgHK.js";import"./C6Y-ieo6.js";import"./C6Eoiclo.js";import"./CxMuZEwX.js";import"./C1oaoi1p.js";import"./BLdMRpJD.js";import"./V04-MrLN.js";import"./8WMJQbWG.js";import"./D3cEeQh7.js";import"./B9o6sFST.js";import"./CuvkTsqs.js";import"./pwJTkIQ4.js";import"./D2edadpd.js";import"./DL4EpgqQ.js";import"./Vcq4gwWv.js";import"./CCeM5lW2.js";const We={class:"flex items-center gap-2"},Xe={class:"flex justify-end gap-2"},Ye={class:"flex items-center gap-2"},Ze={class:"flex justify-end gap-2"},Ge={class:"flex items-center gap-2"},Je={class:"flex justify-end gap-2"},et={class:"flex items-center gap-2 text-error"},tt={key:0,class:"text-sm text-dimmed mt-1"},at={class:"flex justify-end gap-2"},lt=G({__name:"FileTreeModals",props:re({contextTarget:{}},{showNewFile:{type:Boolean,required:!0},showNewFileModifiers:{},showNewFolder:{type:Boolean,required:!0},showNewFolderModifiers:{},showRename:{type:Boolean,required:!0},showRenameModifiers:{},showDelete:{type:Boolean,required:!0},showDeleteModifiers:{}}),emits:re(["createFile","createFolder","rename","delete"],["update:showNewFile","update:showNewFolder","update:showRename","update:showDelete"]),setup(d,{emit:v}){const c=te(d,"showNewFile"),h=te(d,"showNewFolder"),u=te(d,"showRename"),f=te(d,"showDelete"),w=d,y=v,m=x("");se(u,_=>{_&&w.contextTarget&&(m.value=w.contextTarget.label)}),se(c,_=>{_&&(m.value="")}),se(h,_=>{_&&(m.value="")});function U(){m.value.trim()&&(y("createFile",m.value.trim()),c.value=!1,m.value="")}function D(){m.value.trim()&&(y("createFolder",m.value.trim()),h.value=!1,m.value="")}function b(){m.value.trim()&&(y("rename",m.value.trim()),u.value=!1,m.value="")}function q(){y("delete"),f.value=!1}return(_,e)=>{const T=J,a=me,t=ae,r=Ue,$=pe;return F(),z(ye,null,[l($,{open:c.value,"onUpdate:open":e[2]||(e[2]=s=>c.value=s)},{content:i(()=>[l(r,null,{header:i(()=>[n("div",We,[l(T,{name:"i-lucide-file-plus",class:"size-5"}),e[11]||(e[11]=n("span",{class:"font-semibold"},"New File",-1))])]),footer:i(()=>[n("div",Xe,[l(t,{color:"neutral",variant:"ghost",onClick:e[1]||(e[1]=s=>c.value=!1)},{default:i(()=>[...e[12]||(e[12]=[P(" Cancel ",-1)])]),_:1}),l(t,{onClick:U},{default:i(()=>[...e[13]||(e[13]=[P(" Create ",-1)])]),_:1})])]),default:i(()=>[l(a,{modelValue:o(m),"onUpdate:modelValue":e[0]||(e[0]=s=>B(m)?m.value=s:null),placeholder:"filename.md",autofocus:"",onKeyup:ie(U,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["open"]),l($,{open:h.value,"onUpdate:open":e[5]||(e[5]=s=>h.value=s)},{content:i(()=>[l(r,null,{header:i(()=>[n("div",Ye,[l(T,{name:"i-lucide-folder-plus",class:"size-5"}),e[14]||(e[14]=n("span",{class:"font-semibold"},"New Folder",-1))])]),footer:i(()=>[n("div",Ze,[l(t,{color:"neutral",variant:"ghost",onClick:e[4]||(e[4]=s=>h.value=!1)},{default:i(()=>[...e[15]||(e[15]=[P(" Cancel ",-1)])]),_:1}),l(t,{onClick:D},{default:i(()=>[...e[16]||(e[16]=[P(" Create ",-1)])]),_:1})])]),default:i(()=>[l(a,{modelValue:o(m),"onUpdate:modelValue":e[3]||(e[3]=s=>B(m)?m.value=s:null),placeholder:"folder-name",autofocus:"",onKeyup:ie(D,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["open"]),l($,{open:u.value,"onUpdate:open":e[8]||(e[8]=s=>u.value=s)},{content:i(()=>[l(r,null,{header:i(()=>[n("div",Ge,[l(T,{name:"i-lucide-pencil",class:"size-5"}),e[17]||(e[17]=n("span",{class:"font-semibold"},"Rename",-1))])]),footer:i(()=>[n("div",Je,[l(t,{color:"neutral",variant:"ghost",onClick:e[7]||(e[7]=s=>u.value=!1)},{default:i(()=>[...e[18]||(e[18]=[P(" Cancel ",-1)])]),_:1}),l(t,{onClick:b},{default:i(()=>[...e[19]||(e[19]=[P(" Rename ",-1)])]),_:1})])]),default:i(()=>[l(a,{modelValue:o(m),"onUpdate:modelValue":e[6]||(e[6]=s=>B(m)?m.value=s:null),placeholder:"new-name",autofocus:"",onKeyup:ie(b,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["open"]),l($,{open:f.value,"onUpdate:open":e[10]||(e[10]=s=>f.value=s)},{content:i(()=>[l(r,null,{header:i(()=>[n("div",et,[l(T,{name:"i-lucide-trash-2",class:"size-5"}),e[20]||(e[20]=n("span",{class:"font-semibold"},"Delete",-1))])]),footer:i(()=>[n("div",at,[l(t,{color:"neutral",variant:"ghost",onClick:e[9]||(e[9]=s=>f.value=!1)},{default:i(()=>[...e[23]||(e[23]=[P(" Cancel ",-1)])]),_:1}),l(t,{color:"error",onClick:q},{default:i(()=>[...e[24]||(e[24]=[P(" Delete ",-1)])]),_:1})])]),default:i(()=>[n("p",null,[e[21]||(e[21]=P(" Are you sure you want to delete ",-1)),n("strong",null,Q(d.contextTarget?.label),1),e[22]||(e[22]=P("? ",-1))]),d.contextTarget?.type==="directory"?(F(),z("p",tt," This will delete all files and folders inside. ")):H("",!0)]),_:1})]),_:1},8,["open"])],64)}}}),ot=Object.assign(lt,{__name:"FilesFileTreeModals"});function nt(){const d=x([]),v=x(null),c=x(!1),h=x(null),u=x("");function f(a,t=!1){const r=a.type==="directory"?void 0:w(a.name);return{id:a.path,label:a.name,icon:r,path:a.path,type:a.type,defaultExpanded:t,children:a.children?.map($=>f($))}}function w(a){switch(a.split(".").pop()?.toLowerCase()){case"md":return"i-lucide-file-text";case"ts":case"tsx":return"i-lucide-file-code";case"js":case"jsx":return"i-lucide-file-code";case"vue":return"i-lucide-file-code";case"json":return"i-lucide-file-json";case"css":case"scss":return"i-lucide-file-code";case"png":case"jpg":case"jpeg":case"gif":case"svg":return"i-lucide-file-image";default:return"i-lucide-file"}}async function y(a="/"){c.value=!0,h.value=null;try{const t=await $fetch("/api/fs/list",{query:{path:a,recursive:"true"}});d.value=t.data.map(r=>f(r,!0))}catch(t){h.value="Failed to load file tree",console.error("Failed to load file tree:",t)}finally{c.value=!1}}async function m(a){try{return(await $fetch("/api/fs/read",{method:"POST",body:{path:a}})).data}catch(t){throw console.error("Failed to read file:",t),t}}async function U(a,t){try{return(await $fetch("/api/fs/write",{method:"POST",body:{path:a,content:t}})).data}catch(r){throw console.error("Failed to write file:",r),r}}async function D(a,t){const r=a==="/"?`/${t}`:`${a}/${t}`;return await U(r,""),await y(),r}async function b(a,t){const r=a==="/"?`/${t}`:`${a}/${t}`;try{return await $fetch("/api/fs/mkdir",{method:"POST",body:{path:r}}),await y(),r}catch($){throw console.error("Failed to create folder:",$),$}}async function q(a,t){const r=a.split("/");r.pop();const $=[...r,t].join("/");try{return await $fetch("/api/fs/rename",{method:"POST",body:{oldPath:a,newPath:$}}),await y(),$}catch(s){throw console.error("Failed to rename:",s),s}}async function _(a){try{await $fetch("/api/fs/delete",{method:"POST",body:{path:a}}),v.value===a&&(v.value=null),await y()}catch(t){throw console.error("Failed to delete:",t),t}}async function e(a,t){try{const r=await $fetch("/api/fs/move",{method:"POST",body:{sourcePath:a,destinationPath:t}});return await y(),r.data.newPath}catch(r){throw console.error("Failed to move:",r),r}}const T=M(()=>{if(!u.value)return d.value;const a=u.value.toLowerCase();function t(r){return r.reduce(($,s)=>{const I=s.label.toLowerCase().includes(a),V=s.children?t(s.children):[];return(I||V.length>0)&&$.push({...s,children:V.length>0?V:s.children,defaultExpanded:V.length>0||I}),$},[])}return t(d.value)});return{items:d,filteredItems:T,selectedFile:v,loading:c,error:h,searchQuery:u,loadTree:y,readFile:m,writeFile:U,createFile:D,createFolder:b,renameItem:q,deleteItem:_,moveItem:e}}const st={class:"h-full flex flex-col"},it={class:"-mt-1 pb-2"},dt={key:0,class:"flex items-center justify-center py-8"},rt={key:1,class:"h-full min-h-32 flex flex-col items-center justify-center text-dimmed text-sm"},ut=["onContextmenu","onDragstart","onDragover","onDrop"],ct={class:"truncate"},mt=G({__name:"FileTree",emits:["select"],setup(d,{emit:v}){const c=v,{filteredItems:h,selectedFile:u,loading:f,searchQuery:w,loadTree:y,createFile:m,createFolder:U,renameItem:D,deleteItem:b,moveItem:q}=nt(),_=x(null),e=x(null);function T(k,p){_.value=p,k.dataTransfer&&(k.dataTransfer.effectAllowed="move",k.dataTransfer.setData("text/plain",p.path))}function a(k,p){_.value&&p.type==="directory"&&_.value.path!==p.path&&(p.path.startsWith(_.value.path+"/")||(k.preventDefault(),e.value=p))}function t(){e.value=null}function r(){_.value=null,e.value=null}async function $(k,p){if(k.preventDefault(),!(!_.value||p.type!=="directory")){try{await q(_.value.path,p.path)}catch{}_.value=null,e.value=null}}const s=x(null),I=x(!1),V=x(!1),E=x(!1),N=x(!1),A=M(()=>[[{label:"New File",icon:"i-lucide-file-plus",onSelect:()=>{I.value=!0}},{label:"New Folder",icon:"i-lucide-folder-plus",onSelect:()=>{V.value=!0}}],[{label:"Rename",icon:"i-lucide-pencil",onSelect:()=>{s.value&&(E.value=!0)}},{label:"Delete",icon:"i-lucide-trash-2",color:"error",onSelect:()=>{N.value=!0}}]]);function W(k){k.type==="file"&&(u.value=k.path,c("select",k.path))}async function ee(k){const p=s.value?.type==="directory"?s.value.path:"/";let R=k;R.includes(".")||(R+=".md");try{const K=await m(p,R);u.value=K,c("select",K)}catch{}}async function X(k){const p=s.value?.type==="directory"?s.value.path:"/";try{await U(p,k)}catch{}}async function S(k){if(s.value)try{await D(s.value.path,k)}catch{}}async function C(){if(s.value)try{await b(s.value.path)}catch{}}return de(()=>{y()}),(k,p)=>{const R=me,K=ve,L=J,le=Fe,oe=De,ne=ot;return F(),z("div",st,[n("div",it,[l(R,{modelValue:o(w),"onUpdate:modelValue":p[0]||(p[0]=g=>B(w)?w.value=g:null),placeholder:"Search files...",icon:"i-lucide-search",size:"sm",class:"w-full"},null,8,["modelValue"])]),l(K,{class:"mt-2"}),l(oe,{items:o(A),class:"flex-1 h-full overflow-auto p-2",onContextmenu:p[2]||(p[2]=g=>s.value=null)},{default:i(()=>[o(f)?(F(),z("div",dt,[l(L,{name:"i-lucide-loader-2",class:"size-6 animate-spin text-dimmed"})])):o(h).length===0?(F(),z("div",rt,[l(L,{name:"i-lucide-folder-open",class:"size-8 mx-auto mb-2 opacity-50"}),p[7]||(p[7]=n("p",null,"No files found",-1)),p[8]||(p[8]=n("p",{class:"text-xs mt-1"}," Right-click to create a file ",-1))])):(F(),O(le,{key:2,items:o(h),"get-key":g=>g.id,color:"primary","expanded-icon":"i-lucide-folder-open","collapsed-icon":"i-lucide-folder",onSelect:p[1]||(p[1]=(g,Y)=>W(Y))},{item:i(({item:g,expanded:Y})=>[n("div",{class:Z(["flex items-center gap-2 w-full",{"bg-primary/10 rounded":o(e)?.path===g.path}]),draggable:"true",onContextmenu:j=>s.value=g,onDragstart:j=>T(j,g),onDragover:j=>a(j,g),onDragleave:t,onDragend:r,onDrop:j=>$(j,g)},[g.children?.length?(F(),O(L,{key:0,name:Y?"i-lucide-folder-open":"i-lucide-folder",class:"size-4 shrink-0 text-dimmed"},null,8,["name"])):g.icon?(F(),O(L,{key:1,name:g.icon,class:"size-4 shrink-0 text-dimmed"},null,8,["name"])):(F(),O(L,{key:2,name:"i-lucide-file",class:"size-4 shrink-0 text-dimmed"})),n("span",ct,Q(g.label),1)],42,ut)]),_:1},8,["items","get-key"]))]),_:1},8,["items"]),l(ne,{"show-new-file":o(I),"onUpdate:showNewFile":p[3]||(p[3]=g=>B(I)?I.value=g:null),"show-new-folder":o(V),"onUpdate:showNewFolder":p[4]||(p[4]=g=>B(V)?V.value=g:null),"show-rename":o(E),"onUpdate:showRename":p[5]||(p[5]=g=>B(E)?E.value=g:null),"show-delete":o(N),"onUpdate:showDelete":p[6]||(p[6]=g=>B(N)?N.value=g:null),"context-target":o(s),onCreateFile:ee,onCreateFolder:X,onRename:S,onDelete:C},null,8,["show-new-file","show-new-folder","show-rename","show-delete","context-target"])])}}}),pt=Object.assign(mt,{__name:"FilesFileTree"}),ft={base:"hidden lg:flex",variants:{side:{left:"",right:""}}},vt={__name:"UDashboardSidebarCollapse",props:{color:{type:null,required:!1,default:"neutral"},variant:{type:null,required:!1,default:"ghost"},side:{type:String,required:!1,default:"left"},label:{type:String,required:!1},activeColor:{type:null,required:!1},activeVariant:{type:null,required:!1},size:{type:null,required:!1},square:{type:Boolean,required:!1},block:{type:Boolean,required:!1},loadingAuto:{type:Boolean,required:!1},onClick:{type:[Function,Array],required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1},as:{type:null,required:!1},type:{type:null,required:!1},disabled:{type:Boolean,required:!1},exactActiveClass:{type:String,required:!1},viewTransition:{type:Boolean,required:!1}},setup(d){const v=d,c=he(_e(v,"icon","side","class")),{t:h}=we(),u=be(),{sidebarCollapsed:f,collapseSidebar:w}=je({sidebarCollapsed:x(!1),collapseSidebar:()=>{}}),y=M(()=>ue({extend:ue(ft),...u.ui?.dashboardSidebarCollapse||{}}));return(m,U)=>(F(),O(ae,ge({...o(c),icon:v.icon||(o(f)?o(u).ui.icons.panelOpen:o(u).ui.icons.panelClose),"aria-label":o(f)?o(h)("dashboardSidebarCollapse.expand"):o(h)("dashboardSidebarCollapse.collapse"),...m.$attrs},{class:y.value({class:v.class,side:v.side}),onClick:U[0]||(U[0]=D=>o(w)?.(!o(f)))}),null,16,["class"]))}},yt={class:"border-b border-default px-4 py-3 bg-elevated/50"},ht={class:"flex flex-wrap items-start gap-3"},_t={class:"flex items-start gap-2 py-0.5"},wt={class:"min-w-0"},bt={class:"font-medium"},gt={class:"text-xs text-dimmed truncate"},xt=G({__name:"DocumentMetadata",props:{metadata:{},projects:{}},emits:["update:metadata"],setup(d,{emit:v}){const c=d,h=v,u=[{label:"Hidden",value:"hidden",icon:"i-lucide-lock",description:"Hidden behind authentication and never viewable by the public"},{label:"Private",value:"private",icon:"i-lucide-eye-off",description:"Viewable by anyone with the link, but will not be indexed by search engines"},{label:"Public",value:"public",icon:"i-lucide-eye",description:"Viewable to the public and indexed by search engines"}],f=M(()=>c.metadata.shared?c.metadata.shareType||"private":"hidden"),w=M(()=>u.find(b=>b.value===f.value)),y=M({get:()=>c.metadata.tags||[],set:b=>h("update:metadata",{tags:b})});function m(b){h("update:metadata",{projectId:b||void 0})}function U(b){b==="hidden"?h("update:metadata",{shared:!1,shareType:void 0}):h("update:metadata",{shared:!0,shareType:b})}const D=M(()=>[{label:"None",value:void 0},...c.projects.map(b=>({label:b.name,value:b.id}))]);return(b,q)=>{const _=Ie,e=Ne,T=J,a=ze;return F(),z("div",yt,[n("div",ht,[l(e,{label:"Project",class:"w-40"},{default:i(()=>[l(_,{"model-value":d.metadata.projectId,items:o(D),"value-key":"value",placeholder:"None",class:"w-full","search-input":!1,"onUpdate:modelValue":m},null,8,["model-value","items"])]),_:1}),l(e,{label:"Visibility",class:"w-44"},{default:i(()=>[l(_,{"model-value":o(f),items:u,"value-key":"value",class:"w-full","search-input":!1,"onUpdate:modelValue":U},{leading:i(()=>[o(w)?(F(),O(T,{key:0,name:o(w).icon,class:"size-4 text-dimmed"},null,8,["name"])):H("",!0)]),item:i(({item:t})=>[n("div",_t,[l(T,{name:t.icon,class:"size-4 mt-0.5 shrink-0"},null,8,["name"]),n("div",wt,[n("div",bt,Q(t.label),1),n("div",gt,Q(t.description),1)])])]),_:1},8,["model-value"])]),_:1}),l(e,{label:"Tags",class:"flex-1 min-w-48"},{default:i(()=>[l(a,{modelValue:o(y),"onUpdate:modelValue":q[0]||(q[0]=t=>B(y)?y.value=t:null),placeholder:"Add tags...",class:"w-full"},null,8,["modelValue"])]),_:1})])])}}}),kt=Object.assign(xt,{__name:"EditorDocumentMetadata"}),$t=Ee(Re),Ct={class:"h-full flex flex-col"},Ft={class:"border-b border-default py-2 flex items-center justify-between"},Dt={class:"flex items-center gap-2 text-sm text-dimmed min-w-0"},Ut={class:"truncate"},Tt={key:0,class:"w-40"},St={class:"flex items-center gap-3"},jt={key:0,class:"flex items-center gap-1 text-sm text-dimmed"},Mt={class:"space-y-4"},qt={class:"flex items-center gap-3"},Vt={class:"flex items-center gap-3"},It={class:"flex items-center gap-3"},Nt=G({__name:"DocumentEditor",props:{document:{},body:{},metadata:{},filePath:{},saveStatus:{},isDirty:{type:Boolean},metadataDirty:{type:Boolean}},emits:["update:body","update:metadata","save"],async setup(d,{emit:v}){let c,h;const u=d,f=v,{data:w}=([c,h]=xe(()=>Qe("/api/projects","$c96-63t_ij")),c=await c,h(),c),y=M(()=>w.value?.data||[]),m=x(!0),{editorMode:U}=fe(),D=M({get:()=>U.value==="editor",set:S=>U.value=S?"editor":"code"}),b=M(()=>u.document.fileType==="markdown"||Le(u.filePath)),q=M(()=>Ae(u.filePath)),_=M(()=>b.value),e=[[{kind:"heading",level:1,icon:"i-lucide-heading-1"},{kind:"heading",level:2,icon:"i-lucide-heading-2"},{kind:"heading",level:3,icon:"i-lucide-heading-3"}],[{kind:"mark",mark:"bold",icon:"i-lucide-bold"},{kind:"mark",mark:"italic",icon:"i-lucide-italic"},{kind:"mark",mark:"code",icon:"i-lucide-code"}],[{kind:"bulletList",icon:"i-lucide-list"},{kind:"orderedList",icon:"i-lucide-list-ordered"},{kind:"blockquote",icon:"i-lucide-quote"}],[{kind:"link",icon:"i-lucide-link"},{kind:"codeBlock",icon:"i-lucide-file-code"},{kind:"horizontalRule",icon:"i-lucide-minus"}],[{kind:"undo",icon:"i-lucide-undo"},{kind:"redo",icon:"i-lucide-redo"}]],T=M(()=>{switch(u.saveStatus){case"saving":return"i-lucide-loader-2";case"saved":return"i-lucide-check";case"error":return"i-lucide-alert-circle";default:return u.isDirty||u.metadataDirty?"i-lucide-circle-dot":null}}),a=M(()=>{switch(u.saveStatus){case"saving":return"Saving...";case"saved":return"Saved";case"error":return"Error saving";default:return u.isDirty||u.metadataDirty?"Unsaved changes":""}}),t=M(()=>u.body||void 0);function r(S){f("update:body",S)}function $(S){f("update:metadata",S)}function s(S){(S.metaKey||S.ctrlKey)&&S.key==="s"&&(S.preventDefault(),f("save"))}de(()=>window.addEventListener("keydown",s)),ke(()=>window.removeEventListener("keydown",s));const I=$e(),V=M(()=>u.document?.id?`${window.location.origin}/view/${u.document.id}`:""),E=x(!1),N=x(!1);function A(){u.metadata.shared?ee():N.value=!0}const{copy:W}=He();async function ee(){await W(V.value)?(E.value=!0,I.add({title:"Link copied!",icon:"i-lucide-check",color:"success"}),setTimeout(()=>{E.value=!1},2e3)):I.add({title:"Failed to copy link",icon:"i-lucide-x",color:"error"})}function X(S,C){f("update:metadata",{shared:S,shareType:C??void 0}),N.value=!1,S&&setTimeout(()=>ee(),100)}return(S,C)=>{const k=J,p=Ve,R=ae,K=kt,L=Pe,le=Be,oe=$t,ne=Ke,g=Oe,Y=pe;return F(),z("div",Ct,[n("div",Ft,[n("div",Dt,[l(k,{name:"i-lucide-file-text",class:"size-4 shrink-0"}),n("span",Ut,Q(d.filePath),1)]),o(_)?(F(),z("div",Tt,[l(p,{modelValue:o(D),"onUpdate:modelValue":C[0]||(C[0]=j=>B(D)?D.value=j:null),"unchecked-icon":"i-lucide-code","checked-icon":"i-lucide-pencil",label:o(D)?"Editor Mode":"Code Mode",ui:{base:"data-[state=unchecked]:bg-info",icon:"group-data-[state=unchecked]:text-info"}},null,8,["modelValue","label"])])):H("",!0),n("div",St,[l(R,{icon:o(E)?"i-lucide-check":"i-lucide-share",size:"xs",variant:"ghost",class:"rounded-full",onClick:A},null,8,["icon"]),l(R,{icon:o(m)?"i-lucide-panel-top-close":"i-lucide-panel-top-open",size:"xs",variant:"ghost",class:"rounded-full",onClick:C[1]||(C[1]=j=>m.value=!o(m))},null,8,["icon"]),o(T)?(F(),z("div",jt,[l(k,{name:o(T),class:Z(["size-4",d.saveStatus==="saving"&&"animate-spin",d.saveStatus==="error"&&"text-error"])},null,8,["name","class"]),n("span",null,Q(o(a)),1)])):H("",!0)])]),o(m)?(F(),O(K,{key:0,metadata:d.metadata,projects:o(y),"onUpdate:metadata":$},null,8,["metadata","projects"])):H("",!0),o(b)&&o(D)?(F(),O(le,{key:1,"model-value":o(t),"content-type":"markdown",placeholder:"Start writing...",class:"markdown-editor w-full min-h-64 flex-1","onUpdate:modelValue":r},{default:i(({editor:j})=>[l(L,{editor:j,items:e,class:"border-b border-default"},null,8,["editor"])]),_:1},8,["model-value"])):(F(),O(g,{key:2},{fallback:i(()=>[l(ne,{class:"flex-1"})]),default:i(()=>[l(oe,{"model-value":d.body,language:o(q),class:"flex-1","onUpdate:modelValue":r},null,8,["model-value","language"])]),_:1})),l(Y,{open:o(N),"onUpdate:open":C[5]||(C[5]=j=>B(N)?N.value=j:null),title:"Share Document",description:"Choose how you want to share this document"},{body:i(()=>[n("div",Mt,[n("div",{class:Z(["p-4 border border-default rounded-lg cursor-pointer hover:bg-elevated transition-colors",{"border-primary bg-elevated":!d.metadata.shared}]),onClick:C[2]||(C[2]=j=>X(!1,null))},[n("div",qt,[l(k,{name:"i-lucide-eye-off",class:"size-5 text-dimmed"}),C[6]||(C[6]=n("div",null,[n("div",{class:"font-medium"}," Hidden "),n("div",{class:"text-sm text-dimmed"}," Only you can view this document. Not accessible via link. ")],-1))])],2),n("div",{class:Z(["p-4 border border-default rounded-lg cursor-pointer hover:bg-elevated transition-colors",{"border-primary bg-elevated":d.metadata.shared&&d.metadata.shareType==="private"}]),onClick:C[3]||(C[3]=j=>X(!0,"private"))},[n("div",Vt,[l(k,{name:"i-lucide-link",class:"size-5 text-dimmed"}),C[7]||(C[7]=n("div",null,[n("div",{class:"font-medium"}," Private (Link Only) "),n("div",{class:"text-sm text-dimmed"}," Anyone with the link can view. Not indexed by search engines. ")],-1))])],2),n("div",{class:Z(["p-4 border border-default rounded-lg cursor-pointer hover:bg-elevated transition-colors",{"border-primary bg-elevated":d.metadata.shared&&d.metadata.shareType==="public"}]),onClick:C[4]||(C[4]=j=>X(!0,"public"))},[n("div",It,[l(k,{name:"i-lucide-globe",class:"size-5 text-dimmed"}),C[8]||(C[8]=n("div",null,[n("div",{class:"font-medium"}," Public "),n("div",{class:"text-sm text-dimmed"}," Visible to everyone. Indexed by search engines. ")],-1))])],2)])]),_:1},8,["open"])])}}}),zt=Object.assign(Nt,{__name:"EditorDocumentEditor"});function Pt(){const d=x(null),v=x(null),c=x(""),h=x(null),u=x(!1),f=x("idle"),w=x(!1),y=x(!1),m=ce(async()=>{!d.value||!w.value||await _({body:c.value})},2e3),U=ce(async()=>{!d.value||!y.value||await _()},500);async function D(a){u.value=!0,h.value=a,w.value=!1,y.value=!1,f.value="idle";try{const t=await $fetch("/api/documents/by-path",{method:"POST",body:{path:a}});d.value=t.data.document,v.value=t.data.metadata,c.value=t.data.body||""}catch(t){console.error("Failed to load document:",t),d.value=null,v.value=null,c.value=""}finally{u.value=!1}}function b(a){c.value!==a&&(c.value=a,w.value=!0,m())}function q(a){v.value&&(v.value={...v.value,...a},y.value=!0,U())}async function _(a={}){if(d.value){f.value="saving";try{const t={...a};y.value&&v.value&&(t.title=v.value.title,t.tags=v.value.tags,t.projectId=v.value.projectId,t.shared=v.value.shared,t.shareType=v.value.shareType),w.value&&a.body===void 0&&(t.body=c.value);const r=await $fetch(`/api/documents/${d.value.id}`,{method:"PUT",body:t});d.value=r.data.document,v.value=r.data.metadata,c.value=r.data.body||"",w.value=!1,y.value=!1,f.value="saved",setTimeout(()=>{f.value==="saved"&&(f.value="idle")},2e3)}catch(t){console.error("Failed to save document:",t),f.value="error"}}}async function e(){!w.value&&!y.value||await _({body:c.value})}function T(){d.value=null,v.value=null,c.value="",h.value=null,w.value=!1,y.value=!1,f.value="idle"}return{document:d,metadata:v,body:c,filePath:h,loading:u,saveStatus:f,isDirty:w,metadataDirty:y,loadDocument:D,updateBody:b,updateMetadata:q,saveDocument:_,saveNow:e,closeDocument:T}}const Bt={class:"flex flex-1 min-w-0"},Et={key:0,class:"flex-1 flex items-center justify-center h-full"},Ot={key:1,class:"flex-1 flex items-center justify-center h-full text-dimmed"},Rt={class:"text-center"},Pa=G({__name:"docs",setup(d){const v=Ce(),{document:c,metadata:h,body:u,filePath:f,loading:w,saveStatus:y,isDirty:m,metadataDirty:U,loadDocument:D,updateBody:b,updateMetadata:q,saveNow:_}=Pt(),{lastDocumentPath:e}=fe();async function T(a){await D(a),e.value=a}return de(async()=>{const a=v.query.path;a?(await D(a),e.value=a):e.value&&await D(e.value)}),(a,t)=>{const r=pt,$=Te,s=vt,I=Me,V=ae,E=qe,N=Se,A=J,W=zt;return F(),z("div",Bt,[l($,{id:"docs-filetree",collapsible:"",resizable:"","min-size":12,"default-size":16,"max-size":24,class:"hidden lg:flex"},{body:i(()=>[l(r,{class:"h-full",onSelect:T})]),_:1}),l($,{id:"docs-editor",grow:"",ui:{body:"sm:py-0"}},{header:i(()=>[l(N,null,{title:i(()=>[l(s),t[0]||(t[0]=P(" Editor ",-1))]),right:i(()=>[l(I),l(E,null,{content:i(()=>[l(r,{class:"h-full",onSelect:T})]),default:i(()=>[l(V,{icon:"i-lucide-folder-tree",class:"block lg:hidden"})]),_:1})]),_:1})]),body:i(()=>[o(w)?(F(),z("div",Et,[l(A,{name:"i-lucide-loader-2",class:"size-6 animate-spin text-dimmed"})])):o(f)?o(h)&&o(c)?(F(),O(W,{key:o(f),document:o(c),body:o(u),metadata:o(h),"file-path":o(f),"save-status":o(y),"is-dirty":o(m),"metadata-dirty":o(U),class:"h-full","onUpdate:body":o(b),"onUpdate:metadata":o(q),onSave:o(_)},null,8,["document","body","metadata","file-path","save-status","is-dirty","metadata-dirty","onUpdate:body","onUpdate:metadata","onSave"])):H("",!0):(F(),z("div",Ot,[n("div",Rt,[l(A,{name:"i-lucide-file-text",class:"size-32 mx-auto mb-4 opacity-50"}),t[1]||(t[1]=n("p",null,"Select a file to edit",-1))])]))]),_:1})])}}});export{Pa as default};
1
+ import{_ as me}from"./4Vi9hKJC.js";import{_ as ve}from"./OwiFxd0L.js";import{d as G,aU as re,aV as te,e as x,h as se,M as z,o as F,al as ye,Z as l,w as i,bm as ie,ak as B,a as o,ac as n,a0 as ae,ab as P,_ as J,aa as H,af as Q,i as M,C as de,c as O,$ as Z,X as he,Y as _e,U as we,W as be,ap as ue,m as ge,bD as xe,a5 as ke,aj as $e,b0 as ce,ah as Ce}from"./CBqC92gC.js";import{_ as Fe,a as De}from"./Dqx39Omg.js";import{_ as Ue}from"./EPFrlLUV.js";import{_ as pe}from"./CE491BHV.js";import{_ as Te,a as Se}from"./CZV2u8Xx.js";import{u as je}from"./C35LJkds.js";import{_ as Me}from"./BDzVzzBM.js";import{_ as qe}from"./nRp8uM7H.js";import{_ as Ve}from"./DuYzdzqK.js";import{_ as Ie}from"./BW0FZi7D.js";import{_ as Ne}from"./BnfOmQBX.js";import{_ as ze}from"./CD2Wt775.js";import{_ as Pe,a as Be}from"./oBlsjU0k.js";import{a as Ee,_ as Oe}from"./-Q9J9PRu.js";import{_ as Re}from"./Br712gOY.js";import{i as Le,d as Ae,_ as Ke,u as He}from"./B6lgiDn1.js";import{u as Qe}from"./BDhTzPPo.js";import{u as fe}from"./BZFf3mr_.js";import"./DUf0f355.js";import"./CTIUqf4N.js";import"./DjJn4g73.js";import"./Zge3ScOQ.js";import"./BoqEl-F1.js";import"./BXmijQzM.js";import"./B9OPrqTh.js";import"./D9dLxr1_.js";import"./JsQhjNzl.js";import"./CM5aLXsq.js";import"./BA646MN4.js";import"./DoIqoxBH.js";import"./DWnLv2oh.js";import"./CN_jZBEh.js";import"./C6Y-ieo6.js";import"./Cyo4VJ6S.js";import"./Dfzca1IN.js";import"./DAQeLqQw.js";import"./DvZW6QuM.js";import"./iIxC-lNx.js";import"./DrQVjmDX.js";import"./CdIGoC9r.js";import"./CltqyXO5.js";import"./ClKTC8bU.js";import"./Dm5HyQgM.js";import"./Db66Rsfj.js";import"./Bt87rSlM.js";import"./Vcq4gwWv.js";import"./-O86rjFZ.js";const We={class:"flex items-center gap-2"},Xe={class:"flex justify-end gap-2"},Ye={class:"flex items-center gap-2"},Ze={class:"flex justify-end gap-2"},Ge={class:"flex items-center gap-2"},Je={class:"flex justify-end gap-2"},et={class:"flex items-center gap-2 text-error"},tt={key:0,class:"text-sm text-dimmed mt-1"},at={class:"flex justify-end gap-2"},lt=G({__name:"FileTreeModals",props:re({contextTarget:{}},{showNewFile:{type:Boolean,required:!0},showNewFileModifiers:{},showNewFolder:{type:Boolean,required:!0},showNewFolderModifiers:{},showRename:{type:Boolean,required:!0},showRenameModifiers:{},showDelete:{type:Boolean,required:!0},showDeleteModifiers:{}}),emits:re(["createFile","createFolder","rename","delete"],["update:showNewFile","update:showNewFolder","update:showRename","update:showDelete"]),setup(d,{emit:v}){const c=te(d,"showNewFile"),h=te(d,"showNewFolder"),u=te(d,"showRename"),f=te(d,"showDelete"),w=d,y=v,m=x("");se(u,_=>{_&&w.contextTarget&&(m.value=w.contextTarget.label)}),se(c,_=>{_&&(m.value="")}),se(h,_=>{_&&(m.value="")});function U(){m.value.trim()&&(y("createFile",m.value.trim()),c.value=!1,m.value="")}function D(){m.value.trim()&&(y("createFolder",m.value.trim()),h.value=!1,m.value="")}function b(){m.value.trim()&&(y("rename",m.value.trim()),u.value=!1,m.value="")}function q(){y("delete"),f.value=!1}return(_,e)=>{const T=J,a=me,t=ae,r=Ue,$=pe;return F(),z(ye,null,[l($,{open:c.value,"onUpdate:open":e[2]||(e[2]=s=>c.value=s)},{content:i(()=>[l(r,null,{header:i(()=>[n("div",We,[l(T,{name:"i-lucide-file-plus",class:"size-5"}),e[11]||(e[11]=n("span",{class:"font-semibold"},"New File",-1))])]),footer:i(()=>[n("div",Xe,[l(t,{color:"neutral",variant:"ghost",onClick:e[1]||(e[1]=s=>c.value=!1)},{default:i(()=>[...e[12]||(e[12]=[P(" Cancel ",-1)])]),_:1}),l(t,{onClick:U},{default:i(()=>[...e[13]||(e[13]=[P(" Create ",-1)])]),_:1})])]),default:i(()=>[l(a,{modelValue:o(m),"onUpdate:modelValue":e[0]||(e[0]=s=>B(m)?m.value=s:null),placeholder:"filename.md",autofocus:"",onKeyup:ie(U,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["open"]),l($,{open:h.value,"onUpdate:open":e[5]||(e[5]=s=>h.value=s)},{content:i(()=>[l(r,null,{header:i(()=>[n("div",Ye,[l(T,{name:"i-lucide-folder-plus",class:"size-5"}),e[14]||(e[14]=n("span",{class:"font-semibold"},"New Folder",-1))])]),footer:i(()=>[n("div",Ze,[l(t,{color:"neutral",variant:"ghost",onClick:e[4]||(e[4]=s=>h.value=!1)},{default:i(()=>[...e[15]||(e[15]=[P(" Cancel ",-1)])]),_:1}),l(t,{onClick:D},{default:i(()=>[...e[16]||(e[16]=[P(" Create ",-1)])]),_:1})])]),default:i(()=>[l(a,{modelValue:o(m),"onUpdate:modelValue":e[3]||(e[3]=s=>B(m)?m.value=s:null),placeholder:"folder-name",autofocus:"",onKeyup:ie(D,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["open"]),l($,{open:u.value,"onUpdate:open":e[8]||(e[8]=s=>u.value=s)},{content:i(()=>[l(r,null,{header:i(()=>[n("div",Ge,[l(T,{name:"i-lucide-pencil",class:"size-5"}),e[17]||(e[17]=n("span",{class:"font-semibold"},"Rename",-1))])]),footer:i(()=>[n("div",Je,[l(t,{color:"neutral",variant:"ghost",onClick:e[7]||(e[7]=s=>u.value=!1)},{default:i(()=>[...e[18]||(e[18]=[P(" Cancel ",-1)])]),_:1}),l(t,{onClick:b},{default:i(()=>[...e[19]||(e[19]=[P(" Rename ",-1)])]),_:1})])]),default:i(()=>[l(a,{modelValue:o(m),"onUpdate:modelValue":e[6]||(e[6]=s=>B(m)?m.value=s:null),placeholder:"new-name",autofocus:"",onKeyup:ie(b,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["open"]),l($,{open:f.value,"onUpdate:open":e[10]||(e[10]=s=>f.value=s)},{content:i(()=>[l(r,null,{header:i(()=>[n("div",et,[l(T,{name:"i-lucide-trash-2",class:"size-5"}),e[20]||(e[20]=n("span",{class:"font-semibold"},"Delete",-1))])]),footer:i(()=>[n("div",at,[l(t,{color:"neutral",variant:"ghost",onClick:e[9]||(e[9]=s=>f.value=!1)},{default:i(()=>[...e[23]||(e[23]=[P(" Cancel ",-1)])]),_:1}),l(t,{color:"error",onClick:q},{default:i(()=>[...e[24]||(e[24]=[P(" Delete ",-1)])]),_:1})])]),default:i(()=>[n("p",null,[e[21]||(e[21]=P(" Are you sure you want to delete ",-1)),n("strong",null,Q(d.contextTarget?.label),1),e[22]||(e[22]=P("? ",-1))]),d.contextTarget?.type==="directory"?(F(),z("p",tt," This will delete all files and folders inside. ")):H("",!0)]),_:1})]),_:1},8,["open"])],64)}}}),ot=Object.assign(lt,{__name:"FilesFileTreeModals"});function nt(){const d=x([]),v=x(null),c=x(!1),h=x(null),u=x("");function f(a,t=!1){const r=a.type==="directory"?void 0:w(a.name);return{id:a.path,label:a.name,icon:r,path:a.path,type:a.type,defaultExpanded:t,children:a.children?.map($=>f($))}}function w(a){switch(a.split(".").pop()?.toLowerCase()){case"md":return"i-lucide-file-text";case"ts":case"tsx":return"i-lucide-file-code";case"js":case"jsx":return"i-lucide-file-code";case"vue":return"i-lucide-file-code";case"json":return"i-lucide-file-json";case"css":case"scss":return"i-lucide-file-code";case"png":case"jpg":case"jpeg":case"gif":case"svg":return"i-lucide-file-image";default:return"i-lucide-file"}}async function y(a="/"){c.value=!0,h.value=null;try{const t=await $fetch("/api/fs/list",{query:{path:a,recursive:"true"}});d.value=t.data.map(r=>f(r,!0))}catch(t){h.value="Failed to load file tree",console.error("Failed to load file tree:",t)}finally{c.value=!1}}async function m(a){try{return(await $fetch("/api/fs/read",{method:"POST",body:{path:a}})).data}catch(t){throw console.error("Failed to read file:",t),t}}async function U(a,t){try{return(await $fetch("/api/fs/write",{method:"POST",body:{path:a,content:t}})).data}catch(r){throw console.error("Failed to write file:",r),r}}async function D(a,t){const r=a==="/"?`/${t}`:`${a}/${t}`;return await U(r,""),await y(),r}async function b(a,t){const r=a==="/"?`/${t}`:`${a}/${t}`;try{return await $fetch("/api/fs/mkdir",{method:"POST",body:{path:r}}),await y(),r}catch($){throw console.error("Failed to create folder:",$),$}}async function q(a,t){const r=a.split("/");r.pop();const $=[...r,t].join("/");try{return await $fetch("/api/fs/rename",{method:"POST",body:{oldPath:a,newPath:$}}),await y(),$}catch(s){throw console.error("Failed to rename:",s),s}}async function _(a){try{await $fetch("/api/fs/delete",{method:"POST",body:{path:a}}),v.value===a&&(v.value=null),await y()}catch(t){throw console.error("Failed to delete:",t),t}}async function e(a,t){try{const r=await $fetch("/api/fs/move",{method:"POST",body:{sourcePath:a,destinationPath:t}});return await y(),r.data.newPath}catch(r){throw console.error("Failed to move:",r),r}}const T=M(()=>{if(!u.value)return d.value;const a=u.value.toLowerCase();function t(r){return r.reduce(($,s)=>{const I=s.label.toLowerCase().includes(a),V=s.children?t(s.children):[];return(I||V.length>0)&&$.push({...s,children:V.length>0?V:s.children,defaultExpanded:V.length>0||I}),$},[])}return t(d.value)});return{items:d,filteredItems:T,selectedFile:v,loading:c,error:h,searchQuery:u,loadTree:y,readFile:m,writeFile:U,createFile:D,createFolder:b,renameItem:q,deleteItem:_,moveItem:e}}const st={class:"h-full flex flex-col"},it={class:"-mt-1 pb-2"},dt={key:0,class:"flex items-center justify-center py-8"},rt={key:1,class:"h-full min-h-32 flex flex-col items-center justify-center text-dimmed text-sm"},ut=["onContextmenu","onDragstart","onDragover","onDrop"],ct={class:"truncate"},mt=G({__name:"FileTree",emits:["select"],setup(d,{emit:v}){const c=v,{filteredItems:h,selectedFile:u,loading:f,searchQuery:w,loadTree:y,createFile:m,createFolder:U,renameItem:D,deleteItem:b,moveItem:q}=nt(),_=x(null),e=x(null);function T(k,p){_.value=p,k.dataTransfer&&(k.dataTransfer.effectAllowed="move",k.dataTransfer.setData("text/plain",p.path))}function a(k,p){_.value&&p.type==="directory"&&_.value.path!==p.path&&(p.path.startsWith(_.value.path+"/")||(k.preventDefault(),e.value=p))}function t(){e.value=null}function r(){_.value=null,e.value=null}async function $(k,p){if(k.preventDefault(),!(!_.value||p.type!=="directory")){try{await q(_.value.path,p.path)}catch{}_.value=null,e.value=null}}const s=x(null),I=x(!1),V=x(!1),E=x(!1),N=x(!1),A=M(()=>[[{label:"New File",icon:"i-lucide-file-plus",onSelect:()=>{I.value=!0}},{label:"New Folder",icon:"i-lucide-folder-plus",onSelect:()=>{V.value=!0}}],[{label:"Rename",icon:"i-lucide-pencil",onSelect:()=>{s.value&&(E.value=!0)}},{label:"Delete",icon:"i-lucide-trash-2",color:"error",onSelect:()=>{N.value=!0}}]]);function W(k){k.type==="file"&&(u.value=k.path,c("select",k.path))}async function ee(k){const p=s.value?.type==="directory"?s.value.path:"/";let R=k;R.includes(".")||(R+=".md");try{const K=await m(p,R);u.value=K,c("select",K)}catch{}}async function X(k){const p=s.value?.type==="directory"?s.value.path:"/";try{await U(p,k)}catch{}}async function S(k){if(s.value)try{await D(s.value.path,k)}catch{}}async function C(){if(s.value)try{await b(s.value.path)}catch{}}return de(()=>{y()}),(k,p)=>{const R=me,K=ve,L=J,le=Fe,oe=De,ne=ot;return F(),z("div",st,[n("div",it,[l(R,{modelValue:o(w),"onUpdate:modelValue":p[0]||(p[0]=g=>B(w)?w.value=g:null),placeholder:"Search files...",icon:"i-lucide-search",size:"sm",class:"w-full"},null,8,["modelValue"])]),l(K,{class:"mt-2"}),l(oe,{items:o(A),class:"flex-1 h-full overflow-auto p-2",onContextmenu:p[2]||(p[2]=g=>s.value=null)},{default:i(()=>[o(f)?(F(),z("div",dt,[l(L,{name:"i-lucide-loader-2",class:"size-6 animate-spin text-dimmed"})])):o(h).length===0?(F(),z("div",rt,[l(L,{name:"i-lucide-folder-open",class:"size-8 mx-auto mb-2 opacity-50"}),p[7]||(p[7]=n("p",null,"No files found",-1)),p[8]||(p[8]=n("p",{class:"text-xs mt-1"}," Right-click to create a file ",-1))])):(F(),O(le,{key:2,items:o(h),"get-key":g=>g.id,color:"primary","expanded-icon":"i-lucide-folder-open","collapsed-icon":"i-lucide-folder",onSelect:p[1]||(p[1]=(g,Y)=>W(Y))},{item:i(({item:g,expanded:Y})=>[n("div",{class:Z(["flex items-center gap-2 w-full",{"bg-primary/10 rounded":o(e)?.path===g.path}]),draggable:"true",onContextmenu:j=>s.value=g,onDragstart:j=>T(j,g),onDragover:j=>a(j,g),onDragleave:t,onDragend:r,onDrop:j=>$(j,g)},[g.children?.length?(F(),O(L,{key:0,name:Y?"i-lucide-folder-open":"i-lucide-folder",class:"size-4 shrink-0 text-dimmed"},null,8,["name"])):g.icon?(F(),O(L,{key:1,name:g.icon,class:"size-4 shrink-0 text-dimmed"},null,8,["name"])):(F(),O(L,{key:2,name:"i-lucide-file",class:"size-4 shrink-0 text-dimmed"})),n("span",ct,Q(g.label),1)],42,ut)]),_:1},8,["items","get-key"]))]),_:1},8,["items"]),l(ne,{"show-new-file":o(I),"onUpdate:showNewFile":p[3]||(p[3]=g=>B(I)?I.value=g:null),"show-new-folder":o(V),"onUpdate:showNewFolder":p[4]||(p[4]=g=>B(V)?V.value=g:null),"show-rename":o(E),"onUpdate:showRename":p[5]||(p[5]=g=>B(E)?E.value=g:null),"show-delete":o(N),"onUpdate:showDelete":p[6]||(p[6]=g=>B(N)?N.value=g:null),"context-target":o(s),onCreateFile:ee,onCreateFolder:X,onRename:S,onDelete:C},null,8,["show-new-file","show-new-folder","show-rename","show-delete","context-target"])])}}}),pt=Object.assign(mt,{__name:"FilesFileTree"}),ft={base:"hidden lg:flex",variants:{side:{left:"",right:""}}},vt={__name:"UDashboardSidebarCollapse",props:{color:{type:null,required:!1,default:"neutral"},variant:{type:null,required:!1,default:"ghost"},side:{type:String,required:!1,default:"left"},label:{type:String,required:!1},activeColor:{type:null,required:!1},activeVariant:{type:null,required:!1},size:{type:null,required:!1},square:{type:Boolean,required:!1},block:{type:Boolean,required:!1},loadingAuto:{type:Boolean,required:!1},onClick:{type:[Function,Array],required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1},as:{type:null,required:!1},type:{type:null,required:!1},disabled:{type:Boolean,required:!1},exactActiveClass:{type:String,required:!1},viewTransition:{type:Boolean,required:!1}},setup(d){const v=d,c=he(_e(v,"icon","side","class")),{t:h}=we(),u=be(),{sidebarCollapsed:f,collapseSidebar:w}=je({sidebarCollapsed:x(!1),collapseSidebar:()=>{}}),y=M(()=>ue({extend:ue(ft),...u.ui?.dashboardSidebarCollapse||{}}));return(m,U)=>(F(),O(ae,ge({...o(c),icon:v.icon||(o(f)?o(u).ui.icons.panelOpen:o(u).ui.icons.panelClose),"aria-label":o(f)?o(h)("dashboardSidebarCollapse.expand"):o(h)("dashboardSidebarCollapse.collapse"),...m.$attrs},{class:y.value({class:v.class,side:v.side}),onClick:U[0]||(U[0]=D=>o(w)?.(!o(f)))}),null,16,["class"]))}},yt={class:"border-b border-default px-4 py-3 bg-elevated/50"},ht={class:"flex flex-wrap items-start gap-3"},_t={class:"flex items-start gap-2 py-0.5"},wt={class:"min-w-0"},bt={class:"font-medium"},gt={class:"text-xs text-dimmed truncate"},xt=G({__name:"DocumentMetadata",props:{metadata:{},projects:{}},emits:["update:metadata"],setup(d,{emit:v}){const c=d,h=v,u=[{label:"Hidden",value:"hidden",icon:"i-lucide-lock",description:"Hidden behind authentication and never viewable by the public"},{label:"Private",value:"private",icon:"i-lucide-eye-off",description:"Viewable by anyone with the link, but will not be indexed by search engines"},{label:"Public",value:"public",icon:"i-lucide-eye",description:"Viewable to the public and indexed by search engines"}],f=M(()=>c.metadata.shared?c.metadata.shareType||"private":"hidden"),w=M(()=>u.find(b=>b.value===f.value)),y=M({get:()=>c.metadata.tags||[],set:b=>h("update:metadata",{tags:b})});function m(b){h("update:metadata",{projectId:b||void 0})}function U(b){b==="hidden"?h("update:metadata",{shared:!1,shareType:void 0}):h("update:metadata",{shared:!0,shareType:b})}const D=M(()=>[{label:"None",value:void 0},...c.projects.map(b=>({label:b.name,value:b.id}))]);return(b,q)=>{const _=Ie,e=Ne,T=J,a=ze;return F(),z("div",yt,[n("div",ht,[l(e,{label:"Project",class:"w-40"},{default:i(()=>[l(_,{"model-value":d.metadata.projectId,items:o(D),"value-key":"value",placeholder:"None",class:"w-full","search-input":!1,"onUpdate:modelValue":m},null,8,["model-value","items"])]),_:1}),l(e,{label:"Visibility",class:"w-44"},{default:i(()=>[l(_,{"model-value":o(f),items:u,"value-key":"value",class:"w-full","search-input":!1,"onUpdate:modelValue":U},{leading:i(()=>[o(w)?(F(),O(T,{key:0,name:o(w).icon,class:"size-4 text-dimmed"},null,8,["name"])):H("",!0)]),item:i(({item:t})=>[n("div",_t,[l(T,{name:t.icon,class:"size-4 mt-0.5 shrink-0"},null,8,["name"]),n("div",wt,[n("div",bt,Q(t.label),1),n("div",gt,Q(t.description),1)])])]),_:1},8,["model-value"])]),_:1}),l(e,{label:"Tags",class:"flex-1 min-w-48"},{default:i(()=>[l(a,{modelValue:o(y),"onUpdate:modelValue":q[0]||(q[0]=t=>B(y)?y.value=t:null),placeholder:"Add tags...",class:"w-full"},null,8,["modelValue"])]),_:1})])])}}}),kt=Object.assign(xt,{__name:"EditorDocumentMetadata"}),$t=Ee(Re),Ct={class:"h-full flex flex-col"},Ft={class:"border-b border-default py-2 flex items-center justify-between"},Dt={class:"flex items-center gap-2 text-sm text-dimmed min-w-0"},Ut={class:"truncate"},Tt={key:0,class:"w-40"},St={class:"flex items-center gap-3"},jt={key:0,class:"flex items-center gap-1 text-sm text-dimmed"},Mt={class:"space-y-4"},qt={class:"flex items-center gap-3"},Vt={class:"flex items-center gap-3"},It={class:"flex items-center gap-3"},Nt=G({__name:"DocumentEditor",props:{document:{},body:{},metadata:{},filePath:{},saveStatus:{},isDirty:{type:Boolean},metadataDirty:{type:Boolean}},emits:["update:body","update:metadata","save"],async setup(d,{emit:v}){let c,h;const u=d,f=v,{data:w}=([c,h]=xe(()=>Qe("/api/projects","$c96-63t_ij")),c=await c,h(),c),y=M(()=>w.value?.data||[]),m=x(!0),{editorMode:U}=fe(),D=M({get:()=>U.value==="editor",set:S=>U.value=S?"editor":"code"}),b=M(()=>u.document.fileType==="markdown"||Le(u.filePath)),q=M(()=>Ae(u.filePath)),_=M(()=>b.value),e=[[{kind:"heading",level:1,icon:"i-lucide-heading-1"},{kind:"heading",level:2,icon:"i-lucide-heading-2"},{kind:"heading",level:3,icon:"i-lucide-heading-3"}],[{kind:"mark",mark:"bold",icon:"i-lucide-bold"},{kind:"mark",mark:"italic",icon:"i-lucide-italic"},{kind:"mark",mark:"code",icon:"i-lucide-code"}],[{kind:"bulletList",icon:"i-lucide-list"},{kind:"orderedList",icon:"i-lucide-list-ordered"},{kind:"blockquote",icon:"i-lucide-quote"}],[{kind:"link",icon:"i-lucide-link"},{kind:"codeBlock",icon:"i-lucide-file-code"},{kind:"horizontalRule",icon:"i-lucide-minus"}],[{kind:"undo",icon:"i-lucide-undo"},{kind:"redo",icon:"i-lucide-redo"}]],T=M(()=>{switch(u.saveStatus){case"saving":return"i-lucide-loader-2";case"saved":return"i-lucide-check";case"error":return"i-lucide-alert-circle";default:return u.isDirty||u.metadataDirty?"i-lucide-circle-dot":null}}),a=M(()=>{switch(u.saveStatus){case"saving":return"Saving...";case"saved":return"Saved";case"error":return"Error saving";default:return u.isDirty||u.metadataDirty?"Unsaved changes":""}}),t=M(()=>u.body||void 0);function r(S){f("update:body",S)}function $(S){f("update:metadata",S)}function s(S){(S.metaKey||S.ctrlKey)&&S.key==="s"&&(S.preventDefault(),f("save"))}de(()=>window.addEventListener("keydown",s)),ke(()=>window.removeEventListener("keydown",s));const I=$e(),V=M(()=>u.document?.id?`${window.location.origin}/view/${u.document.id}`:""),E=x(!1),N=x(!1);function A(){u.metadata.shared?ee():N.value=!0}const{copy:W}=He();async function ee(){await W(V.value)?(E.value=!0,I.add({title:"Link copied!",icon:"i-lucide-check",color:"success"}),setTimeout(()=>{E.value=!1},2e3)):I.add({title:"Failed to copy link",icon:"i-lucide-x",color:"error"})}function X(S,C){f("update:metadata",{shared:S,shareType:C??void 0}),N.value=!1,S&&setTimeout(()=>ee(),100)}return(S,C)=>{const k=J,p=Ve,R=ae,K=kt,L=Pe,le=Be,oe=$t,ne=Ke,g=Oe,Y=pe;return F(),z("div",Ct,[n("div",Ft,[n("div",Dt,[l(k,{name:"i-lucide-file-text",class:"size-4 shrink-0"}),n("span",Ut,Q(d.filePath),1)]),o(_)?(F(),z("div",Tt,[l(p,{modelValue:o(D),"onUpdate:modelValue":C[0]||(C[0]=j=>B(D)?D.value=j:null),"unchecked-icon":"i-lucide-code","checked-icon":"i-lucide-pencil",label:o(D)?"Editor Mode":"Code Mode",ui:{base:"data-[state=unchecked]:bg-info",icon:"group-data-[state=unchecked]:text-info"}},null,8,["modelValue","label"])])):H("",!0),n("div",St,[l(R,{icon:o(E)?"i-lucide-check":"i-lucide-share",size:"xs",variant:"ghost",class:"rounded-full",onClick:A},null,8,["icon"]),l(R,{icon:o(m)?"i-lucide-panel-top-close":"i-lucide-panel-top-open",size:"xs",variant:"ghost",class:"rounded-full",onClick:C[1]||(C[1]=j=>m.value=!o(m))},null,8,["icon"]),o(T)?(F(),z("div",jt,[l(k,{name:o(T),class:Z(["size-4",d.saveStatus==="saving"&&"animate-spin",d.saveStatus==="error"&&"text-error"])},null,8,["name","class"]),n("span",null,Q(o(a)),1)])):H("",!0)])]),o(m)?(F(),O(K,{key:0,metadata:d.metadata,projects:o(y),"onUpdate:metadata":$},null,8,["metadata","projects"])):H("",!0),o(b)&&o(D)?(F(),O(le,{key:1,"model-value":o(t),"content-type":"markdown",placeholder:"Start writing...",class:"markdown-editor w-full min-h-64 flex-1","onUpdate:modelValue":r},{default:i(({editor:j})=>[l(L,{editor:j,items:e,class:"border-b border-default"},null,8,["editor"])]),_:1},8,["model-value"])):(F(),O(g,{key:2},{fallback:i(()=>[l(ne,{class:"flex-1"})]),default:i(()=>[l(oe,{"model-value":d.body,language:o(q),class:"flex-1","onUpdate:modelValue":r},null,8,["model-value","language"])]),_:1})),l(Y,{open:o(N),"onUpdate:open":C[5]||(C[5]=j=>B(N)?N.value=j:null),title:"Share Document",description:"Choose how you want to share this document"},{body:i(()=>[n("div",Mt,[n("div",{class:Z(["p-4 border border-default rounded-lg cursor-pointer hover:bg-elevated transition-colors",{"border-primary bg-elevated":!d.metadata.shared}]),onClick:C[2]||(C[2]=j=>X(!1,null))},[n("div",qt,[l(k,{name:"i-lucide-eye-off",class:"size-5 text-dimmed"}),C[6]||(C[6]=n("div",null,[n("div",{class:"font-medium"}," Hidden "),n("div",{class:"text-sm text-dimmed"}," Only you can view this document. Not accessible via link. ")],-1))])],2),n("div",{class:Z(["p-4 border border-default rounded-lg cursor-pointer hover:bg-elevated transition-colors",{"border-primary bg-elevated":d.metadata.shared&&d.metadata.shareType==="private"}]),onClick:C[3]||(C[3]=j=>X(!0,"private"))},[n("div",Vt,[l(k,{name:"i-lucide-link",class:"size-5 text-dimmed"}),C[7]||(C[7]=n("div",null,[n("div",{class:"font-medium"}," Private (Link Only) "),n("div",{class:"text-sm text-dimmed"}," Anyone with the link can view. Not indexed by search engines. ")],-1))])],2),n("div",{class:Z(["p-4 border border-default rounded-lg cursor-pointer hover:bg-elevated transition-colors",{"border-primary bg-elevated":d.metadata.shared&&d.metadata.shareType==="public"}]),onClick:C[4]||(C[4]=j=>X(!0,"public"))},[n("div",It,[l(k,{name:"i-lucide-globe",class:"size-5 text-dimmed"}),C[8]||(C[8]=n("div",null,[n("div",{class:"font-medium"}," Public "),n("div",{class:"text-sm text-dimmed"}," Visible to everyone. Indexed by search engines. ")],-1))])],2)])]),_:1},8,["open"])])}}}),zt=Object.assign(Nt,{__name:"EditorDocumentEditor"});function Pt(){const d=x(null),v=x(null),c=x(""),h=x(null),u=x(!1),f=x("idle"),w=x(!1),y=x(!1),m=ce(async()=>{!d.value||!w.value||await _({body:c.value})},2e3),U=ce(async()=>{!d.value||!y.value||await _()},500);async function D(a){u.value=!0,h.value=a,w.value=!1,y.value=!1,f.value="idle";try{const t=await $fetch("/api/documents/by-path",{method:"POST",body:{path:a}});d.value=t.data.document,v.value=t.data.metadata,c.value=t.data.body||""}catch(t){console.error("Failed to load document:",t),d.value=null,v.value=null,c.value=""}finally{u.value=!1}}function b(a){c.value!==a&&(c.value=a,w.value=!0,m())}function q(a){v.value&&(v.value={...v.value,...a},y.value=!0,U())}async function _(a={}){if(d.value){f.value="saving";try{const t={...a};y.value&&v.value&&(t.title=v.value.title,t.tags=v.value.tags,t.projectId=v.value.projectId,t.shared=v.value.shared,t.shareType=v.value.shareType),w.value&&a.body===void 0&&(t.body=c.value);const r=await $fetch(`/api/documents/${d.value.id}`,{method:"PUT",body:t});d.value=r.data.document,v.value=r.data.metadata,c.value=r.data.body||"",w.value=!1,y.value=!1,f.value="saved",setTimeout(()=>{f.value==="saved"&&(f.value="idle")},2e3)}catch(t){console.error("Failed to save document:",t),f.value="error"}}}async function e(){!w.value&&!y.value||await _({body:c.value})}function T(){d.value=null,v.value=null,c.value="",h.value=null,w.value=!1,y.value=!1,f.value="idle"}return{document:d,metadata:v,body:c,filePath:h,loading:u,saveStatus:f,isDirty:w,metadataDirty:y,loadDocument:D,updateBody:b,updateMetadata:q,saveDocument:_,saveNow:e,closeDocument:T}}const Bt={class:"flex flex-1 min-w-0"},Et={key:0,class:"flex-1 flex items-center justify-center h-full"},Ot={key:1,class:"flex-1 flex items-center justify-center h-full text-dimmed"},Rt={class:"text-center"},Pa=G({__name:"docs",setup(d){const v=Ce(),{document:c,metadata:h,body:u,filePath:f,loading:w,saveStatus:y,isDirty:m,metadataDirty:U,loadDocument:D,updateBody:b,updateMetadata:q,saveNow:_}=Pt(),{lastDocumentPath:e}=fe();async function T(a){await D(a),e.value=a}return de(async()=>{const a=v.query.path;a?(await D(a),e.value=a):e.value&&await D(e.value)}),(a,t)=>{const r=pt,$=Te,s=vt,I=Me,V=ae,E=qe,N=Se,A=J,W=zt;return F(),z("div",Bt,[l($,{id:"docs-filetree",collapsible:"",resizable:"","min-size":12,"default-size":16,"max-size":24,class:"hidden lg:flex"},{body:i(()=>[l(r,{class:"h-full",onSelect:T})]),_:1}),l($,{id:"docs-editor",grow:"",ui:{body:"sm:py-0"}},{header:i(()=>[l(N,null,{title:i(()=>[l(s),t[0]||(t[0]=P(" Editor ",-1))]),right:i(()=>[l(I),l(E,null,{content:i(()=>[l(r,{class:"h-full",onSelect:T})]),default:i(()=>[l(V,{icon:"i-lucide-folder-tree",class:"block lg:hidden"})]),_:1})]),_:1})]),body:i(()=>[o(w)?(F(),z("div",Et,[l(A,{name:"i-lucide-loader-2",class:"size-6 animate-spin text-dimmed"})])):o(f)?o(h)&&o(c)?(F(),O(W,{key:o(f),document:o(c),body:o(u),metadata:o(h),"file-path":o(f),"save-status":o(y),"is-dirty":o(m),"metadata-dirty":o(U),class:"h-full","onUpdate:body":o(b),"onUpdate:metadata":o(q),onSave:o(_)},null,8,["document","body","metadata","file-path","save-status","is-dirty","metadata-dirty","onUpdate:body","onUpdate:metadata","onSave"])):H("",!0):(F(),z("div",Ot,[n("div",Rt,[l(A,{name:"i-lucide-file-text",class:"size-32 mx-auto mb-4 opacity-50"}),t[1]||(t[1]=n("p",null,"Select a file to edit",-1))])]))]),_:1})])}}});export{Pa as default};
@@ -1 +1 @@
1
- import{ax as z,W as q,aD as I,aE as w,i as A,ap as d,c as i,o as n,w as S,r as o,aa as c,a as r,_ as v,$ as t,aF as k,m as h,M as B,af as C,P as $}from"./BOCn_SGf.js";const G={slots:{base:"font-medium inline-flex items-center",label:"truncate",leadingIcon:"shrink-0",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailingIcon:"shrink-0"},variants:{fieldGroup:{horizontal:"not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1]",vertical:"not-only:first:rounded-b-none not-only:last:rounded-t-none not-last:not-first:rounded-none focus-visible:z-[1]"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},variant:{solid:"",outline:"",soft:"",subtle:""},size:{xs:{base:"text-[8px]/3 px-1 py-0.5 gap-1 rounded-sm",leadingIcon:"size-3",leadingAvatarSize:"3xs",trailingIcon:"size-3"},sm:{base:"text-[10px]/3 px-1.5 py-1 gap-1 rounded-sm",leadingIcon:"size-3",leadingAvatarSize:"3xs",trailingIcon:"size-3"},md:{base:"text-xs px-2 py-1 gap-1 rounded-md",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4"},lg:{base:"text-sm px-2 py-1 gap-1.5 rounded-md",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5"},xl:{base:"text-base px-2.5 py-1 gap-1.5 rounded-md",leadingIcon:"size-6",leadingAvatarSize:"2xs",trailingIcon:"size-6"}},square:{true:""}},compoundVariants:[{color:"primary",variant:"solid",class:"bg-primary text-inverted"},{color:"secondary",variant:"solid",class:"bg-secondary text-inverted"},{color:"success",variant:"solid",class:"bg-success text-inverted"},{color:"info",variant:"solid",class:"bg-info text-inverted"},{color:"warning",variant:"solid",class:"bg-warning text-inverted"},{color:"error",variant:"solid",class:"bg-error text-inverted"},{color:"primary",variant:"outline",class:"text-primary ring ring-inset ring-primary/50"},{color:"secondary",variant:"outline",class:"text-secondary ring ring-inset ring-secondary/50"},{color:"success",variant:"outline",class:"text-success ring ring-inset ring-success/50"},{color:"info",variant:"outline",class:"text-info ring ring-inset ring-info/50"},{color:"warning",variant:"outline",class:"text-warning ring ring-inset ring-warning/50"},{color:"error",variant:"outline",class:"text-error ring ring-inset ring-error/50"},{color:"primary",variant:"soft",class:"bg-primary/10 text-primary"},{color:"secondary",variant:"soft",class:"bg-secondary/10 text-secondary"},{color:"success",variant:"soft",class:"bg-success/10 text-success"},{color:"info",variant:"soft",class:"bg-info/10 text-info"},{color:"warning",variant:"soft",class:"bg-warning/10 text-warning"},{color:"error",variant:"soft",class:"bg-error/10 text-error"},{color:"primary",variant:"subtle",class:"bg-primary/10 text-primary ring ring-inset ring-primary/25"},{color:"secondary",variant:"subtle",class:"bg-secondary/10 text-secondary ring ring-inset ring-secondary/25"},{color:"success",variant:"subtle",class:"bg-success/10 text-success ring ring-inset ring-success/25"},{color:"info",variant:"subtle",class:"bg-info/10 text-info ring ring-inset ring-info/25"},{color:"warning",variant:"subtle",class:"bg-warning/10 text-warning ring ring-inset ring-warning/25"},{color:"error",variant:"subtle",class:"bg-error/10 text-error ring ring-inset ring-error/25"},{color:"neutral",variant:"solid",class:"text-inverted bg-inverted"},{color:"neutral",variant:"outline",class:"ring ring-inset ring-accented text-default bg-default"},{color:"neutral",variant:"soft",class:"text-default bg-elevated"},{color:"neutral",variant:"subtle",class:"ring ring-inset ring-accented text-default bg-elevated"},{size:"xs",square:!0,class:"p-0.5"},{size:"sm",square:!0,class:"p-1"},{size:"md",square:!0,class:"p-1"},{size:"lg",square:!0,class:"p-1"},{size:"xl",square:!0,class:"p-1"}],defaultVariants:{color:"primary",variant:"solid",size:"md"}},V={__name:"UBadge",props:{as:{type:null,required:!1,default:"span"},label:{type:[String,Number],required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},square:{type:Boolean,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1}},setup(s){const e=s,f=z(),p=q(),{orientation:b,size:y}=I(e),{isLeading:x,isTrailing:m,leadingIconName:u,trailingIconName:g}=w(e),a=A(()=>d({extend:d(G),...p.ui?.badge||{}})({color:e.color,variant:e.variant,size:y.value||e.size,square:e.square||!f.default&&!e.label,fieldGroup:b.value}));return(l,N)=>(n(),i(r($),{as:s.as,"data-slot":"base",class:t(a.value.base({class:[e.ui?.base,e.class]}))},{default:S(()=>[o(l.$slots,"leading",{ui:a.value},()=>[r(x)&&r(u)?(n(),i(v,{key:0,name:r(u),"data-slot":"leadingIcon",class:t(a.value.leadingIcon({class:e.ui?.leadingIcon}))},null,8,["name","class"])):s.avatar?(n(),i(k,h({key:1,size:e.ui?.leadingAvatarSize||a.value.leadingAvatarSize()},s.avatar,{"data-slot":"leadingAvatar",class:a.value.leadingAvatar({class:e.ui?.leadingAvatar})}),null,16,["size","class"])):c("",!0)]),o(l.$slots,"default",{ui:a.value},()=>[s.label!==void 0&&s.label!==null?(n(),B("span",{key:0,"data-slot":"label",class:t(a.value.label({class:e.ui?.label}))},C(s.label),3)):c("",!0)]),o(l.$slots,"trailing",{ui:a.value},()=>[r(m)&&r(g)?(n(),i(v,{key:0,name:r(g),"data-slot":"trailingIcon",class:t(a.value.trailingIcon({class:e.ui?.trailingIcon}))},null,8,["name","class"])):c("",!0)])]),_:3},8,["as","class"]))}};export{V as _};
1
+ import{ax as z,W as q,aD as I,aE as w,i as A,ap as d,c as i,o as n,w as S,r as o,aa as c,a as r,_ as v,$ as t,aF as k,m as h,M as B,af as C,P as $}from"./CBqC92gC.js";const G={slots:{base:"font-medium inline-flex items-center",label:"truncate",leadingIcon:"shrink-0",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailingIcon:"shrink-0"},variants:{fieldGroup:{horizontal:"not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1]",vertical:"not-only:first:rounded-b-none not-only:last:rounded-t-none not-last:not-first:rounded-none focus-visible:z-[1]"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},variant:{solid:"",outline:"",soft:"",subtle:""},size:{xs:{base:"text-[8px]/3 px-1 py-0.5 gap-1 rounded-sm",leadingIcon:"size-3",leadingAvatarSize:"3xs",trailingIcon:"size-3"},sm:{base:"text-[10px]/3 px-1.5 py-1 gap-1 rounded-sm",leadingIcon:"size-3",leadingAvatarSize:"3xs",trailingIcon:"size-3"},md:{base:"text-xs px-2 py-1 gap-1 rounded-md",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4"},lg:{base:"text-sm px-2 py-1 gap-1.5 rounded-md",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5"},xl:{base:"text-base px-2.5 py-1 gap-1.5 rounded-md",leadingIcon:"size-6",leadingAvatarSize:"2xs",trailingIcon:"size-6"}},square:{true:""}},compoundVariants:[{color:"primary",variant:"solid",class:"bg-primary text-inverted"},{color:"secondary",variant:"solid",class:"bg-secondary text-inverted"},{color:"success",variant:"solid",class:"bg-success text-inverted"},{color:"info",variant:"solid",class:"bg-info text-inverted"},{color:"warning",variant:"solid",class:"bg-warning text-inverted"},{color:"error",variant:"solid",class:"bg-error text-inverted"},{color:"primary",variant:"outline",class:"text-primary ring ring-inset ring-primary/50"},{color:"secondary",variant:"outline",class:"text-secondary ring ring-inset ring-secondary/50"},{color:"success",variant:"outline",class:"text-success ring ring-inset ring-success/50"},{color:"info",variant:"outline",class:"text-info ring ring-inset ring-info/50"},{color:"warning",variant:"outline",class:"text-warning ring ring-inset ring-warning/50"},{color:"error",variant:"outline",class:"text-error ring ring-inset ring-error/50"},{color:"primary",variant:"soft",class:"bg-primary/10 text-primary"},{color:"secondary",variant:"soft",class:"bg-secondary/10 text-secondary"},{color:"success",variant:"soft",class:"bg-success/10 text-success"},{color:"info",variant:"soft",class:"bg-info/10 text-info"},{color:"warning",variant:"soft",class:"bg-warning/10 text-warning"},{color:"error",variant:"soft",class:"bg-error/10 text-error"},{color:"primary",variant:"subtle",class:"bg-primary/10 text-primary ring ring-inset ring-primary/25"},{color:"secondary",variant:"subtle",class:"bg-secondary/10 text-secondary ring ring-inset ring-secondary/25"},{color:"success",variant:"subtle",class:"bg-success/10 text-success ring ring-inset ring-success/25"},{color:"info",variant:"subtle",class:"bg-info/10 text-info ring ring-inset ring-info/25"},{color:"warning",variant:"subtle",class:"bg-warning/10 text-warning ring ring-inset ring-warning/25"},{color:"error",variant:"subtle",class:"bg-error/10 text-error ring ring-inset ring-error/25"},{color:"neutral",variant:"solid",class:"text-inverted bg-inverted"},{color:"neutral",variant:"outline",class:"ring ring-inset ring-accented text-default bg-default"},{color:"neutral",variant:"soft",class:"text-default bg-elevated"},{color:"neutral",variant:"subtle",class:"ring ring-inset ring-accented text-default bg-elevated"},{size:"xs",square:!0,class:"p-0.5"},{size:"sm",square:!0,class:"p-1"},{size:"md",square:!0,class:"p-1"},{size:"lg",square:!0,class:"p-1"},{size:"xl",square:!0,class:"p-1"}],defaultVariants:{color:"primary",variant:"solid",size:"md"}},V={__name:"UBadge",props:{as:{type:null,required:!1,default:"span"},label:{type:[String,Number],required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},square:{type:Boolean,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1}},setup(s){const e=s,f=z(),p=q(),{orientation:b,size:y}=I(e),{isLeading:x,isTrailing:m,leadingIconName:u,trailingIconName:g}=w(e),a=A(()=>d({extend:d(G),...p.ui?.badge||{}})({color:e.color,variant:e.variant,size:y.value||e.size,square:e.square||!f.default&&!e.label,fieldGroup:b.value}));return(l,N)=>(n(),i(r($),{as:s.as,"data-slot":"base",class:t(a.value.base({class:[e.ui?.base,e.class]}))},{default:S(()=>[o(l.$slots,"leading",{ui:a.value},()=>[r(x)&&r(u)?(n(),i(v,{key:0,name:r(u),"data-slot":"leadingIcon",class:t(a.value.leadingIcon({class:e.ui?.leadingIcon}))},null,8,["name","class"])):s.avatar?(n(),i(k,h({key:1,size:e.ui?.leadingAvatarSize||a.value.leadingAvatarSize()},s.avatar,{"data-slot":"leadingAvatar",class:a.value.leadingAvatar({class:e.ui?.leadingAvatar})}),null,16,["size","class"])):c("",!0)]),o(l.$slots,"default",{ui:a.value},()=>[s.label!==void 0&&s.label!==null?(n(),B("span",{key:0,"data-slot":"label",class:t(a.value.label({class:e.ui?.label}))},C(s.label),3)):c("",!0)]),o(l.$slots,"trailing",{ui:a.value},()=>[r(m)&&r(g)?(n(),i(v,{key:0,name:r(g),"data-slot":"trailingIcon",class:t(a.value.trailingIcon({class:e.ui?.trailingIcon}))},null,8,["name","class"])):c("",!0)])]),_:3},8,["as","class"]))}};export{V as _};
@@ -1 +1 @@
1
- import{W as l,i as n,M as i,o as c,r as p,$ as u,ap as s,ab as m,af as d}from"./BOCn_SGf.js";const f={base:"*:first:mt-0 *:last:mb-0 *:my-1.5"},y={__name:"ProseTabsItem",props:{label:{type:String,required:!0},description:{type:String,required:!1},class:{type:null,required:!1}},setup(e){const t=e,a=l(),r=n(()=>s({extend:s(f),...a.ui?.prose?.tabsItem||{}}));return(o,b)=>(c(),i("div",{class:u(r.value({class:t.class}))},[p(o.$slots,"default",{},()=>[m(d(e.description),1)])],2))}};export{y as default};
1
+ import{W as l,i as n,M as i,o as c,r as p,$ as u,ap as s,ab as m,af as d}from"./CBqC92gC.js";const f={base:"*:first:mt-0 *:last:mb-0 *:my-1.5"},y={__name:"ProseTabsItem",props:{label:{type:String,required:!0},description:{type:String,required:!1},class:{type:null,required:!1}},setup(e){const t=e,a=l(),r=n(()=>s({extend:s(f),...a.ui?.prose?.tabsItem||{}}));return(o,b)=>(c(),i("div",{class:u(r.value({class:t.class}))},[p(o.$slots,"default",{},()=>[m(d(e.description),1)])],2))}};export{y as default};
@@ -1 +1 @@
1
- import{d as I,c as y,o as s,w as l,ac as t,M as c,aa as v,af as u,Z as a,ab as f,_ as E,a as e,al as j,am as W,aU as St,aV as Bt,a0 as X,ah as Mt,bl as Tt,aj as Ft,i as F,bD as jt,av as It,e as h,h as Et,C as Nt,ak as H}from"./BOCn_SGf.js";import{_ as q}from"./BhhMUror.js";import{_ as Ot}from"./MYeLvJGV.js";import{_ as zt}from"./6VDUZECX.js";import{_ as Lt,a as Vt}from"./CHnVFnBW.js";import{_ as Ht}from"./CxSijT71.js";import{_ as Gt}from"./jC4pIK1p.js";import{_ as Y}from"./BTGeP1bA.js";import{a as qt,b as Pt,g as tt,c as G,d as et}from"./DqmQtg6Y.js";import{u as Zt,_ as Jt,a as Kt,b as Qt}from"./Daf2MbWG.js";import{a as Wt}from"./BXxZokD_.js";import{_ as Xt}from"./t8B72leH.js";import{_ as nt}from"./BzrhNhdT.js";import{u as Yt}from"./C2-_hcwB.js";import{u as te}from"./mzM4BGtv.js";import"./D3cEeQh7.js";import"./B9o6sFST.js";import"./CuvkTsqs.js";import"./BZm9w7en.js";import"./hCeWb_38.js";import"./8WMJQbWG.js";import"./C8ut0f5H.js";import"./CqkleIqs.js";import"./BVYYP4eQ.js";import"./DlAUqK2U.js";import"./DqR9SdeU.js";import"./C4sG6rdW.js";import"./D_k1YwXm.js";import"./BWqJInD3.js";import"./jTT1R-Vz.js";import"./C6Eoiclo.js";import"./CxMuZEwX.js";import"./hrPTRWjM.js";import"./DZikIgHK.js";import"./DTR31rjp.js";import"./DP8t9VWs.js";import"./DxE8r3r4.js";import"./D2edadpd.js";import"./D41A2mE2.js";import"./C6Y-ieo6.js";import"./Br81Sr2R.js";import"./C1oaoi1p.js";import"./DL4EpgqQ.js";import"./Vcq4gwWv.js";import"./BLdMRpJD.js";import"./V04-MrLN.js";import"./Gyw_2f6x.js";import"./CCeM5lW2.js";const ee={class:"space-y-3"},ne={key:0},se={class:"flex flex-wrap gap-6"},oe={class:"flex items-center gap-2"},ae={class:"text-sm text-muted"},ie={key:0},le={class:"flex items-center gap-2"},re={key:1},ue={class:"flex items-center gap-2"},ce=I({__name:"AgentInfoCard",props:{agent:{}},setup(n){return(x,p)=>{const i=E,_=Y;return s(),y(_,null,{default:l(()=>[t("div",ee,[n.agent.description?(s(),c("div",ne,[p[0]||(p[0]=t("p",{class:"text-sm text-muted uppercase mb-1"}," Description ",-1)),t("p",null,u(n.agent.description),1)])):v("",!0),t("div",se,[t("div",null,[p[1]||(p[1]=t("p",{class:"text-sm text-muted uppercase mb-1"}," Schedule ",-1)),t("p",oe,[a(i,{name:"i-lucide-clock"}),f(" "+u(e(qt)(n.agent.schedule))+" ",1),t("span",ae,"("+u(n.agent.schedule)+")",1)])]),n.agent.maxBudgetUsd?(s(),c("div",ie,[p[2]||(p[2]=t("p",{class:"text-sm text-muted uppercase mb-1"}," Budget Limit ",-1)),t("p",le,[a(i,{name:"i-lucide-dollar-sign"}),f(" $"+u(n.agent.maxBudgetUsd)+" per run ",1)])])):v("",!0),n.agent.lastRunAt?(s(),c("div",re,[p[3]||(p[3]=t("p",{class:"text-sm text-muted uppercase mb-1"}," Last Run ",-1)),t("p",ue,[a(i,{name:"i-lucide-activity"}),f(" "+u(e(Pt)(n.agent.lastRunAt)),1)])])):v("",!0)])])]),_:1})}}}),de=Object.assign(ce,{__name:"AgentsAgentInfoCard"}),me={class:"space-y-4"},pe={key:0,class:"flex items-center justify-center h-32"},ge={key:1,class:"flex flex-col items-center justify-center h-32 text-neutral-500"},fe={key:2,class:"space-y-2"},_e={class:"flex items-start justify-between gap-4"},ve={class:"flex-1 min-w-0"},xe={class:"flex items-center gap-2 mb-1"},ye={class:"text-sm text-muted"},he={class:"text-sm text-muted truncate"},$e={class:"text-right text-sm text-muted shrink-0"},be={key:0},ke=I({__name:"AgentRunHistory",props:{runs:{},loading:{type:Boolean}},emits:["select"],setup(n,{emit:x}){const p=x;function i(_,d=100){return _?_.length<=d?_:_.substring(0,d)+"...":"-"}return(_,d)=>{const b=E,k=q,A=Y;return s(),c("div",me,[d[2]||(d[2]=t("h2",{class:"text-lg font-semibold"}," Run History ",-1)),n.loading?(s(),c("div",pe,[a(b,{name:"i-lucide-loader-2",class:"w-6 h-6 animate-spin text-neutral-400"})])):n.runs.length===0?(s(),c("div",ge,[a(b,{name:"i-lucide-history",class:"w-8 h-8 mb-2"}),d[0]||(d[0]=t("p",null,"No runs yet",-1))])):(s(),c("div",fe,[(s(!0),c(j,null,W(n.runs,g=>(s(),y(A,{key:g.id,class:"cursor-pointer transition-all hover:ring-2 hover:ring-primary/50",onClick:P=>p("select",g)},{default:l(()=>[t("div",_e,[t("div",ve,[t("div",xe,[g.status==="running"?(s(),y(k,{key:0,color:"info",variant:"subtle",size:"sm"},{default:l(()=>[a(b,{name:"i-lucide-loader-2",class:"w-3 h-3 animate-spin mr-1"}),d[1]||(d[1]=f(" Running ",-1))]),_:1})):(s(),y(k,{key:1,color:e(tt)(g.status),size:"sm"},{default:l(()=>[f(u(g.status),1)]),_:2},1032,["color"])),t("span",ye,u(e(G)(g.startedAt)),1)]),t("p",he,u(g.error?i(g.error):i(g.output)),1)]),t("div",$e,[t("p",null,u(e(et)(g.durationMs)),1),g.costUsd?(s(),c("p",be," $"+u(g.costUsd.toFixed(4)),1)):v("",!0)])])]),_:2},1032,["onClick"]))),128))]))])}}}),Ae=Object.assign(ke,{__name:"AgentsAgentRunHistory"}),we={key:0,class:"p-4 space-y-4"},Ce={class:"flex flex-wrap items-center gap-4"},Ue={class:"text-sm text-muted"},Re={key:0,class:"text-sm text-muted"},De={class:"grid grid-cols-2 sm:grid-cols-4 gap-4 p-4 rounded-lg bg-muted/5"},Se={class:"font-medium"},Be={class:"font-medium"},Me={class:"font-medium"},Te={class:"font-medium"},Fe={key:0,class:"p-4 rounded-lg bg-error-500/10 border border-error-500/20"},je={class:"text-sm text-error-400 whitespace-pre-wrap font-mono overflow-x-auto"},Ie={key:1},Ee={class:"max-h-96 overflow-auto rounded-lg bg-muted/5 border border-default"},Ne={class:"p-4 text-sm whitespace-pre-wrap font-mono"},Oe={key:2,class:"text-center text-muted py-8"},ze={key:1,class:"p-4 text-center text-muted"},Le={class:"flex justify-end"},Ve=I({__name:"AgentRunModal",props:St({run:{}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:["update:open"],setup(n){const x=Bt(n,"open");return(p,i)=>{const _=q,d=E,b=X,k=nt;return s(),y(k,{open:x.value,"onUpdate:open":i[1]||(i[1]=A=>x.value=A),title:(n.run,"Run Details"),ui:{content:"sm:max-w-3xl"}},{content:l(()=>[n.run?(s(),c("div",we,[t("div",Ce,[a(_,{color:e(tt)(n.run.status),size:"lg"},{default:l(()=>[f(u(n.run.status),1)]),_:1},8,["color"]),t("span",Ue," Started: "+u(e(G)(n.run.startedAt)),1),n.run.completedAt?(s(),c("span",Re," Completed: "+u(e(G)(n.run.completedAt)),1)):v("",!0)]),t("div",De,[t("div",null,[i[2]||(i[2]=t("p",{class:"text-xs text-muted uppercase"}," Duration ",-1)),t("p",Se,u(e(et)(n.run.durationMs)),1)]),t("div",null,[i[3]||(i[3]=t("p",{class:"text-xs text-muted uppercase"}," Cost ",-1)),t("p",Be,u(n.run.costUsd?`$${n.run.costUsd.toFixed(4)}`:"-"),1)]),t("div",null,[i[4]||(i[4]=t("p",{class:"text-xs text-muted uppercase"}," Input Tokens ",-1)),t("p",Me,u(n.run.inputTokens?.toLocaleString()||"-"),1)]),t("div",null,[i[5]||(i[5]=t("p",{class:"text-xs text-muted uppercase"}," Output Tokens ",-1)),t("p",Te,u(n.run.outputTokens?.toLocaleString()||"-"),1)])]),n.run.error?(s(),c("div",Fe,[i[6]||(i[6]=t("p",{class:"text-sm font-medium text-error-500 mb-2"}," Error ",-1)),t("pre",je,u(n.run.error),1)])):v("",!0),n.run.output?(s(),c("div",Ie,[i[7]||(i[7]=t("p",{class:"text-sm font-medium mb-2"}," Output ",-1)),t("div",Ee,[t("pre",Ne,u(n.run.output),1)])])):v("",!0),!n.run.output&&!n.run.error&&n.run.status==="running"?(s(),c("div",Oe,[a(d,{name:"i-lucide-loader-2",class:"size-8 animate-spin mb-2"}),i[8]||(i[8]=t("p",null,"Agent is currently running...",-1))])):v("",!0)])):(s(),c("div",ze," No run selected "))]),footer:l(()=>[t("div",Le,[a(b,{color:"neutral",variant:"ghost",onClick:i[0]||(i[0]=A=>x.value=!1)},{default:l(()=>[...i[9]||(i[9]=[f(" Close ",-1)])]),_:1})])]),_:1},8,["open","title"])}}}),He=Object.assign(Ve,{__name:"AgentsAgentRunModal"}),Ge=Wt(Qt),qe={class:"contents"},Pe={class:"flex items-center gap-3"},Ze={class:"font-semibold text-lg truncate"},Je={key:0,class:"flex items-center justify-center h-64"},Ke={key:1,class:"p-4 space-y-6"},Qe={class:"p-4 space-y-4"},We={class:"flex items-center gap-3"},Xe={class:"p-2 rounded-full bg-error-500/10"},Ye={class:"text-sm text-muted"},tn={class:"flex justify-end gap-2"},Wn=I({__name:"[id]",async setup(n){let x,p;const i=Mt(),_=Tt(),d=Ft(),{fetchAgentStats:b,fetchRuns:k,updateAgent:A,deleteAgent:g,toggleEnabled:P,runAgent:st,cancelAgent:ot}=Zt(),{isAgentRunning:at}=Yt(),S=F(()=>i.params.id),{data:it,status:lt,error:N,refresh:Z}=([x,p]=jt(()=>te(()=>`/api/agents/${S.value}`,{key:`agent-${S.value}`},"$aMAiG7xhIp")),x=await x,p(),x),r=F(()=>it.value?.data??null),rt=F(()=>lt.value==="pending");if(N.value)throw It({statusCode:N.value.statusCode||404,message:N.value.message||"Agent not found"});const R=h(null),O=h([]),z=h(!1),L=h(!1),J=F(()=>r.value?at(r.value.id)?!0:O.value.some(U=>U.status==="running"):!1),w=h("7d"),ut=[{label:"24h",value:"24h"},{label:"7d",value:"7d"},{label:"30d",value:"30d"}],C=h(!1),D=h(!1),K=h(null),B=h(!1);async function M(){z.value=!0;try{R.value=await b(S.value,w.value)}catch{}finally{z.value=!1}}async function T(){L.value=!0;try{O.value=await k(S.value,w.value)}catch{}finally{L.value=!1}}async function ct(){if(r.value)try{await P(r.value.id),await Z()}catch{d.add({title:"Failed to toggle agent",color:"error",icon:"i-lucide-alert-circle"})}}async function dt(){if(r.value)try{await st(r.value.id),setTimeout(T,1e3)}catch{d.add({title:"Failed to run agent",color:"error",icon:"i-lucide-alert-circle"})}}async function mt(){if(r.value)try{await ot(r.value.id),d.add({title:"Agent cancelled",color:"warning",icon:"i-lucide-x-circle"}),setTimeout(()=>{T(),M()},1e3)}catch{d.add({title:"Failed to cancel agent",description:"No running execution found",color:"error",icon:"i-lucide-alert-circle"})}}async function pt(U){if(r.value)try{await A(r.value.id,U),d.add({title:"Agent updated",color:"success",icon:"i-lucide-check"}),C.value=!1,Z(),M()}catch(o){d.add({title:"Failed to update agent",description:o instanceof Error?o.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}}async function gt(){if(r.value)try{await g(r.value.id),d.add({title:"Agent deleted",color:"success",icon:"i-lucide-check"}),_.push("/agents")}catch{d.add({title:"Failed to delete agent",color:"error",icon:"i-lucide-alert-circle"})}}function ft(U){K.value=U,B.value=!0}return Et(w,()=>{M(),T()}),Nt(()=>{M(),T()}),(U,o)=>{const $=X,V=E,Q=q,_t=Ot,vt=zt,xt=Vt,yt=Ht,ht=Gt,$t=de,bt=Jt,kt=Ge,At=Ae,wt=Lt,Ct=Kt,Ut=Xt,Rt=nt,Dt=He;return s(),c("div",qe,[a(wt,{id:"agent-detail",grow:""},{header:l(()=>[a(xt,null,{left:l(()=>[t("div",Pe,[a($,{icon:"i-lucide-arrow-left",variant:"ghost",size:"sm",onClick:o[0]||(o[0]=m=>e(_).push("/agents"))}),e(r)?(s(),c(j,{key:0},[t("h1",Ze,u(e(r).name),1),e(J)?(s(),y(Q,{key:0,color:"info",variant:"subtle"},{default:l(()=>[a(V,{name:"i-lucide-loader-2",class:"w-3 h-3 animate-spin mr-1"}),o[8]||(o[8]=f(" Running ",-1))]),_:1})):e(r).enabled?v("",!0):(s(),y(Q,{key:1,color:"neutral",variant:"subtle"},{default:l(()=>[...o[9]||(o[9]=[f(" Disabled ",-1)])]),_:1}))],64)):(s(),y(_t,{key:1,class:"h-6 w-32"}))])]),right:l(()=>[e(r)?(s(),c(j,{key:0},[a(vt,{"model-value":e(r).enabled,"onUpdate:modelValue":ct},null,8,["model-value"]),e(J)?(s(),y($,{key:0,icon:"i-lucide-square",variant:"ghost",color:"error",onClick:mt})):(s(),y($,{key:1,icon:"i-lucide-play",variant:"ghost",disabled:!e(r).enabled,onClick:dt},null,8,["disabled"])),a($,{icon:"i-lucide-pencil",variant:"ghost",onClick:o[1]||(o[1]=m=>C.value=!0)}),a($,{icon:"i-lucide-trash-2",variant:"ghost",color:"error",onClick:o[2]||(o[2]=m=>D.value=!0)})],64)):v("",!0)]),_:1}),a(ht,null,{left:l(()=>[a(yt,null,{default:l(()=>[(s(),c(j,null,W(ut,m=>a($,{key:m.value,color:e(w)===m.value?"primary":"neutral",variant:e(w)===m.value?"solid":"ghost",size:"sm",onClick:en=>w.value=m.value},{default:l(()=>[f(u(m.label),1)]),_:2},1032,["color","variant","onClick"])),64))]),_:1})]),_:1})]),body:l(()=>[e(rt)?(s(),c("div",Je,[a(V,{name:"i-lucide-loader-2",class:"w-8 h-8 animate-spin text-neutral-400"})])):e(r)?(s(),c("div",Ke,[a($t,{agent:e(r)},null,8,["agent"]),a(bt,{stats:e(R),loading:e(z),variant:"detail"},null,8,["stats","loading"]),e(R)&&e(R).dailyRuns.length>0?(s(),y(kt,{key:0,data:e(R).dailyRuns,title:"Run Activity"},null,8,["data"])):v("",!0),a(At,{runs:e(O),loading:e(L),onSelect:ft},null,8,["runs","loading"])])):v("",!0)]),_:1}),a(Ut,{open:e(C),"onUpdate:open":o[4]||(o[4]=m=>H(C)?C.value=m:null)},{title:l(()=>[...o[10]||(o[10]=[f(" Edit Agent ",-1)])]),body:l(()=>[a(Ct,{agent:e(r),onSubmit:pt,onCancel:o[3]||(o[3]=m=>C.value=!1)},null,8,["agent"])]),_:1},8,["open"]),a(Rt,{open:e(D),"onUpdate:open":o[6]||(o[6]=m=>H(D)?D.value=m:null)},{content:l(()=>[t("div",Qe,[t("div",We,[t("div",Xe,[a(V,{name:"i-lucide-alert-triangle",class:"w-6 h-6 text-error-500"})]),t("div",null,[o[11]||(o[11]=t("h3",{class:"font-semibold"}," Delete Agent ",-1)),t("p",Ye,' Are you sure you want to delete "'+u(e(r)?.name)+'"? This action cannot be undone. ',1)])])])]),footer:l(()=>[t("div",tn,[a($,{color:"neutral",variant:"ghost",onClick:o[5]||(o[5]=m=>D.value=!1)},{default:l(()=>[...o[12]||(o[12]=[f(" Cancel ",-1)])]),_:1}),a($,{color:"error",onClick:gt},{default:l(()=>[...o[13]||(o[13]=[f(" Delete ",-1)])]),_:1})])]),_:1},8,["open"]),a(Dt,{open:e(B),"onUpdate:open":o[7]||(o[7]=m=>H(B)?B.value=m:null),run:e(K)},null,8,["open","run"])])}}});export{Wn as default};
1
+ import{d as I,c as y,o as s,w as l,ac as t,M as c,aa as v,af as u,Z as a,ab as f,_ as E,a as e,al as j,am as W,aU as St,aV as Bt,a0 as X,ah as Mt,bl as Tt,aj as Ft,i as F,bD as jt,av as It,e as h,h as Et,C as Nt,ak as H}from"./CBqC92gC.js";import{_ as q}from"./BPfVf7kt.js";import{_ as Ot}from"./DhvuBruY.js";import{_ as zt}from"./DuYzdzqK.js";import{_ as Lt,a as Vt}from"./CZV2u8Xx.js";import{_ as Ht}from"./cq8AG_FV.js";import{_ as Gt}from"./DaAG12aj.js";import{_ as Y}from"./EPFrlLUV.js";import{a as qt,b as Pt,g as tt,c as G,d as et}from"./DqmQtg6Y.js";import{u as Zt,_ as Jt,a as Kt,b as Qt}from"./Dj9yr6QC.js";import{a as Wt}from"./-Q9J9PRu.js";import{_ as Xt}from"./Dn7zgQZh.js";import{_ as nt}from"./CE491BHV.js";import{u as Yt}from"./C6FzuEFH.js";import{u as te}from"./BDhTzPPo.js";import"./CdIGoC9r.js";import"./CltqyXO5.js";import"./ClKTC8bU.js";import"./C35LJkds.js";import"./DUf0f355.js";import"./DrQVjmDX.js";import"./C8ut0f5H.js";import"./CqkleIqs.js";import"./CFjVdIUR.js";import"./DlAUqK2U.js";import"./4Vi9hKJC.js";import"./BnfOmQBX.js";import"./tak9pMy9.js";import"./B9OPrqTh.js";import"./DWnLv2oh.js";import"./Cyo4VJ6S.js";import"./Dfzca1IN.js";import"./JsQhjNzl.js";import"./CN_jZBEh.js";import"./BoqEl-F1.js";import"./oBlsjU0k.js";import"./CTIUqf4N.js";import"./Db66Rsfj.js";import"./DoIqoxBH.js";import"./C6Y-ieo6.js";import"./BXmijQzM.js";import"./DAQeLqQw.js";import"./Bt87rSlM.js";import"./Vcq4gwWv.js";import"./DvZW6QuM.js";import"./iIxC-lNx.js";import"./V5ro_Ide.js";import"./-O86rjFZ.js";const ee={class:"space-y-3"},ne={key:0},se={class:"flex flex-wrap gap-6"},oe={class:"flex items-center gap-2"},ae={class:"text-sm text-muted"},ie={key:0},le={class:"flex items-center gap-2"},re={key:1},ue={class:"flex items-center gap-2"},ce=I({__name:"AgentInfoCard",props:{agent:{}},setup(n){return(x,p)=>{const i=E,_=Y;return s(),y(_,null,{default:l(()=>[t("div",ee,[n.agent.description?(s(),c("div",ne,[p[0]||(p[0]=t("p",{class:"text-sm text-muted uppercase mb-1"}," Description ",-1)),t("p",null,u(n.agent.description),1)])):v("",!0),t("div",se,[t("div",null,[p[1]||(p[1]=t("p",{class:"text-sm text-muted uppercase mb-1"}," Schedule ",-1)),t("p",oe,[a(i,{name:"i-lucide-clock"}),f(" "+u(e(qt)(n.agent.schedule))+" ",1),t("span",ae,"("+u(n.agent.schedule)+")",1)])]),n.agent.maxBudgetUsd?(s(),c("div",ie,[p[2]||(p[2]=t("p",{class:"text-sm text-muted uppercase mb-1"}," Budget Limit ",-1)),t("p",le,[a(i,{name:"i-lucide-dollar-sign"}),f(" $"+u(n.agent.maxBudgetUsd)+" per run ",1)])])):v("",!0),n.agent.lastRunAt?(s(),c("div",re,[p[3]||(p[3]=t("p",{class:"text-sm text-muted uppercase mb-1"}," Last Run ",-1)),t("p",ue,[a(i,{name:"i-lucide-activity"}),f(" "+u(e(Pt)(n.agent.lastRunAt)),1)])])):v("",!0)])])]),_:1})}}}),de=Object.assign(ce,{__name:"AgentsAgentInfoCard"}),me={class:"space-y-4"},pe={key:0,class:"flex items-center justify-center h-32"},ge={key:1,class:"flex flex-col items-center justify-center h-32 text-neutral-500"},fe={key:2,class:"space-y-2"},_e={class:"flex items-start justify-between gap-4"},ve={class:"flex-1 min-w-0"},xe={class:"flex items-center gap-2 mb-1"},ye={class:"text-sm text-muted"},he={class:"text-sm text-muted truncate"},$e={class:"text-right text-sm text-muted shrink-0"},be={key:0},ke=I({__name:"AgentRunHistory",props:{runs:{},loading:{type:Boolean}},emits:["select"],setup(n,{emit:x}){const p=x;function i(_,d=100){return _?_.length<=d?_:_.substring(0,d)+"...":"-"}return(_,d)=>{const b=E,k=q,A=Y;return s(),c("div",me,[d[2]||(d[2]=t("h2",{class:"text-lg font-semibold"}," Run History ",-1)),n.loading?(s(),c("div",pe,[a(b,{name:"i-lucide-loader-2",class:"w-6 h-6 animate-spin text-neutral-400"})])):n.runs.length===0?(s(),c("div",ge,[a(b,{name:"i-lucide-history",class:"w-8 h-8 mb-2"}),d[0]||(d[0]=t("p",null,"No runs yet",-1))])):(s(),c("div",fe,[(s(!0),c(j,null,W(n.runs,g=>(s(),y(A,{key:g.id,class:"cursor-pointer transition-all hover:ring-2 hover:ring-primary/50",onClick:P=>p("select",g)},{default:l(()=>[t("div",_e,[t("div",ve,[t("div",xe,[g.status==="running"?(s(),y(k,{key:0,color:"info",variant:"subtle",size:"sm"},{default:l(()=>[a(b,{name:"i-lucide-loader-2",class:"w-3 h-3 animate-spin mr-1"}),d[1]||(d[1]=f(" Running ",-1))]),_:1})):(s(),y(k,{key:1,color:e(tt)(g.status),size:"sm"},{default:l(()=>[f(u(g.status),1)]),_:2},1032,["color"])),t("span",ye,u(e(G)(g.startedAt)),1)]),t("p",he,u(g.error?i(g.error):i(g.output)),1)]),t("div",$e,[t("p",null,u(e(et)(g.durationMs)),1),g.costUsd?(s(),c("p",be," $"+u(g.costUsd.toFixed(4)),1)):v("",!0)])])]),_:2},1032,["onClick"]))),128))]))])}}}),Ae=Object.assign(ke,{__name:"AgentsAgentRunHistory"}),we={key:0,class:"p-4 space-y-4"},Ce={class:"flex flex-wrap items-center gap-4"},Ue={class:"text-sm text-muted"},Re={key:0,class:"text-sm text-muted"},De={class:"grid grid-cols-2 sm:grid-cols-4 gap-4 p-4 rounded-lg bg-muted/5"},Se={class:"font-medium"},Be={class:"font-medium"},Me={class:"font-medium"},Te={class:"font-medium"},Fe={key:0,class:"p-4 rounded-lg bg-error-500/10 border border-error-500/20"},je={class:"text-sm text-error-400 whitespace-pre-wrap font-mono overflow-x-auto"},Ie={key:1},Ee={class:"max-h-96 overflow-auto rounded-lg bg-muted/5 border border-default"},Ne={class:"p-4 text-sm whitespace-pre-wrap font-mono"},Oe={key:2,class:"text-center text-muted py-8"},ze={key:1,class:"p-4 text-center text-muted"},Le={class:"flex justify-end"},Ve=I({__name:"AgentRunModal",props:St({run:{}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:["update:open"],setup(n){const x=Bt(n,"open");return(p,i)=>{const _=q,d=E,b=X,k=nt;return s(),y(k,{open:x.value,"onUpdate:open":i[1]||(i[1]=A=>x.value=A),title:(n.run,"Run Details"),ui:{content:"sm:max-w-3xl"}},{content:l(()=>[n.run?(s(),c("div",we,[t("div",Ce,[a(_,{color:e(tt)(n.run.status),size:"lg"},{default:l(()=>[f(u(n.run.status),1)]),_:1},8,["color"]),t("span",Ue," Started: "+u(e(G)(n.run.startedAt)),1),n.run.completedAt?(s(),c("span",Re," Completed: "+u(e(G)(n.run.completedAt)),1)):v("",!0)]),t("div",De,[t("div",null,[i[2]||(i[2]=t("p",{class:"text-xs text-muted uppercase"}," Duration ",-1)),t("p",Se,u(e(et)(n.run.durationMs)),1)]),t("div",null,[i[3]||(i[3]=t("p",{class:"text-xs text-muted uppercase"}," Cost ",-1)),t("p",Be,u(n.run.costUsd?`$${n.run.costUsd.toFixed(4)}`:"-"),1)]),t("div",null,[i[4]||(i[4]=t("p",{class:"text-xs text-muted uppercase"}," Input Tokens ",-1)),t("p",Me,u(n.run.inputTokens?.toLocaleString()||"-"),1)]),t("div",null,[i[5]||(i[5]=t("p",{class:"text-xs text-muted uppercase"}," Output Tokens ",-1)),t("p",Te,u(n.run.outputTokens?.toLocaleString()||"-"),1)])]),n.run.error?(s(),c("div",Fe,[i[6]||(i[6]=t("p",{class:"text-sm font-medium text-error-500 mb-2"}," Error ",-1)),t("pre",je,u(n.run.error),1)])):v("",!0),n.run.output?(s(),c("div",Ie,[i[7]||(i[7]=t("p",{class:"text-sm font-medium mb-2"}," Output ",-1)),t("div",Ee,[t("pre",Ne,u(n.run.output),1)])])):v("",!0),!n.run.output&&!n.run.error&&n.run.status==="running"?(s(),c("div",Oe,[a(d,{name:"i-lucide-loader-2",class:"size-8 animate-spin mb-2"}),i[8]||(i[8]=t("p",null,"Agent is currently running...",-1))])):v("",!0)])):(s(),c("div",ze," No run selected "))]),footer:l(()=>[t("div",Le,[a(b,{color:"neutral",variant:"ghost",onClick:i[0]||(i[0]=A=>x.value=!1)},{default:l(()=>[...i[9]||(i[9]=[f(" Close ",-1)])]),_:1})])]),_:1},8,["open","title"])}}}),He=Object.assign(Ve,{__name:"AgentsAgentRunModal"}),Ge=Wt(Qt),qe={class:"contents"},Pe={class:"flex items-center gap-3"},Ze={class:"font-semibold text-lg truncate"},Je={key:0,class:"flex items-center justify-center h-64"},Ke={key:1,class:"p-4 space-y-6"},Qe={class:"p-4 space-y-4"},We={class:"flex items-center gap-3"},Xe={class:"p-2 rounded-full bg-error-500/10"},Ye={class:"text-sm text-muted"},tn={class:"flex justify-end gap-2"},Wn=I({__name:"[id]",async setup(n){let x,p;const i=Mt(),_=Tt(),d=Ft(),{fetchAgentStats:b,fetchRuns:k,updateAgent:A,deleteAgent:g,toggleEnabled:P,runAgent:st,cancelAgent:ot}=Zt(),{isAgentRunning:at}=Yt(),S=F(()=>i.params.id),{data:it,status:lt,error:N,refresh:Z}=([x,p]=jt(()=>te(()=>`/api/agents/${S.value}`,{key:`agent-${S.value}`},"$aMAiG7xhIp")),x=await x,p(),x),r=F(()=>it.value?.data??null),rt=F(()=>lt.value==="pending");if(N.value)throw It({statusCode:N.value.statusCode||404,message:N.value.message||"Agent not found"});const R=h(null),O=h([]),z=h(!1),L=h(!1),J=F(()=>r.value?at(r.value.id)?!0:O.value.some(U=>U.status==="running"):!1),w=h("7d"),ut=[{label:"24h",value:"24h"},{label:"7d",value:"7d"},{label:"30d",value:"30d"}],C=h(!1),D=h(!1),K=h(null),B=h(!1);async function M(){z.value=!0;try{R.value=await b(S.value,w.value)}catch{}finally{z.value=!1}}async function T(){L.value=!0;try{O.value=await k(S.value,w.value)}catch{}finally{L.value=!1}}async function ct(){if(r.value)try{await P(r.value.id),await Z()}catch{d.add({title:"Failed to toggle agent",color:"error",icon:"i-lucide-alert-circle"})}}async function dt(){if(r.value)try{await st(r.value.id),setTimeout(T,1e3)}catch{d.add({title:"Failed to run agent",color:"error",icon:"i-lucide-alert-circle"})}}async function mt(){if(r.value)try{await ot(r.value.id),d.add({title:"Agent cancelled",color:"warning",icon:"i-lucide-x-circle"}),setTimeout(()=>{T(),M()},1e3)}catch{d.add({title:"Failed to cancel agent",description:"No running execution found",color:"error",icon:"i-lucide-alert-circle"})}}async function pt(U){if(r.value)try{await A(r.value.id,U),d.add({title:"Agent updated",color:"success",icon:"i-lucide-check"}),C.value=!1,Z(),M()}catch(o){d.add({title:"Failed to update agent",description:o instanceof Error?o.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}}async function gt(){if(r.value)try{await g(r.value.id),d.add({title:"Agent deleted",color:"success",icon:"i-lucide-check"}),_.push("/agents")}catch{d.add({title:"Failed to delete agent",color:"error",icon:"i-lucide-alert-circle"})}}function ft(U){K.value=U,B.value=!0}return Et(w,()=>{M(),T()}),Nt(()=>{M(),T()}),(U,o)=>{const $=X,V=E,Q=q,_t=Ot,vt=zt,xt=Vt,yt=Ht,ht=Gt,$t=de,bt=Jt,kt=Ge,At=Ae,wt=Lt,Ct=Kt,Ut=Xt,Rt=nt,Dt=He;return s(),c("div",qe,[a(wt,{id:"agent-detail",grow:""},{header:l(()=>[a(xt,null,{left:l(()=>[t("div",Pe,[a($,{icon:"i-lucide-arrow-left",variant:"ghost",size:"sm",onClick:o[0]||(o[0]=m=>e(_).push("/agents"))}),e(r)?(s(),c(j,{key:0},[t("h1",Ze,u(e(r).name),1),e(J)?(s(),y(Q,{key:0,color:"info",variant:"subtle"},{default:l(()=>[a(V,{name:"i-lucide-loader-2",class:"w-3 h-3 animate-spin mr-1"}),o[8]||(o[8]=f(" Running ",-1))]),_:1})):e(r).enabled?v("",!0):(s(),y(Q,{key:1,color:"neutral",variant:"subtle"},{default:l(()=>[...o[9]||(o[9]=[f(" Disabled ",-1)])]),_:1}))],64)):(s(),y(_t,{key:1,class:"h-6 w-32"}))])]),right:l(()=>[e(r)?(s(),c(j,{key:0},[a(vt,{"model-value":e(r).enabled,"onUpdate:modelValue":ct},null,8,["model-value"]),e(J)?(s(),y($,{key:0,icon:"i-lucide-square",variant:"ghost",color:"error",onClick:mt})):(s(),y($,{key:1,icon:"i-lucide-play",variant:"ghost",disabled:!e(r).enabled,onClick:dt},null,8,["disabled"])),a($,{icon:"i-lucide-pencil",variant:"ghost",onClick:o[1]||(o[1]=m=>C.value=!0)}),a($,{icon:"i-lucide-trash-2",variant:"ghost",color:"error",onClick:o[2]||(o[2]=m=>D.value=!0)})],64)):v("",!0)]),_:1}),a(ht,null,{left:l(()=>[a(yt,null,{default:l(()=>[(s(),c(j,null,W(ut,m=>a($,{key:m.value,color:e(w)===m.value?"primary":"neutral",variant:e(w)===m.value?"solid":"ghost",size:"sm",onClick:en=>w.value=m.value},{default:l(()=>[f(u(m.label),1)]),_:2},1032,["color","variant","onClick"])),64))]),_:1})]),_:1})]),body:l(()=>[e(rt)?(s(),c("div",Je,[a(V,{name:"i-lucide-loader-2",class:"w-8 h-8 animate-spin text-neutral-400"})])):e(r)?(s(),c("div",Ke,[a($t,{agent:e(r)},null,8,["agent"]),a(bt,{stats:e(R),loading:e(z),variant:"detail"},null,8,["stats","loading"]),e(R)&&e(R).dailyRuns.length>0?(s(),y(kt,{key:0,data:e(R).dailyRuns,title:"Run Activity"},null,8,["data"])):v("",!0),a(At,{runs:e(O),loading:e(L),onSelect:ft},null,8,["runs","loading"])])):v("",!0)]),_:1}),a(Ut,{open:e(C),"onUpdate:open":o[4]||(o[4]=m=>H(C)?C.value=m:null)},{title:l(()=>[...o[10]||(o[10]=[f(" Edit Agent ",-1)])]),body:l(()=>[a(Ct,{agent:e(r),onSubmit:pt,onCancel:o[3]||(o[3]=m=>C.value=!1)},null,8,["agent"])]),_:1},8,["open"]),a(Rt,{open:e(D),"onUpdate:open":o[6]||(o[6]=m=>H(D)?D.value=m:null)},{content:l(()=>[t("div",Qe,[t("div",We,[t("div",Xe,[a(V,{name:"i-lucide-alert-triangle",class:"w-6 h-6 text-error-500"})]),t("div",null,[o[11]||(o[11]=t("h3",{class:"font-semibold"}," Delete Agent ",-1)),t("p",Ye,' Are you sure you want to delete "'+u(e(r)?.name)+'"? This action cannot be undone. ',1)])])])]),footer:l(()=>[t("div",tn,[a($,{color:"neutral",variant:"ghost",onClick:o[5]||(o[5]=m=>D.value=!1)},{default:l(()=>[...o[12]||(o[12]=[f(" Cancel ",-1)])]),_:1}),a($,{color:"error",onClick:gt},{default:l(()=>[...o[13]||(o[13]=[f(" Delete ",-1)])]),_:1})])]),_:1},8,["open"]),a(Dt,{open:e(B),"onUpdate:open":o[7]||(o[7]=m=>H(B)?B.value=m:null),run:e(K)},null,8,["open","run"])])}}});export{Wn as default};
@@ -1 +1 @@
1
- import{i as w,a as t,d as k,u as X,c as m,o as n,w as c,Z as _,P as ee,m as S,r as b,aQ as Le,aT as Oe,aR as Re,aS as Be,e as N,C as Z,g as tt,bn as at,ak as Ke,B as ke,X as lt,a5 as Te,bF as it,aY as rt,aa as B,aL as Y,aG as Ge,bg as ot,ab as H,h as Ae,bm as st,ao as je,af as M,aM as ue,b6 as nt,aU as Ee,ax as ut,aV as dt,U as pt,W as ct,aH as ft,aI as mt,au as j,aZ as be,aN as gt,aD as vt,aE as bt,ap as Pe,b8 as yt,a1 as U,bW as ht,aO as xt,M as A,$ as y,ac as ne,_ as ye,aF as $e,bX as _t,al as W,am as ze,bY as De,J as Ct,aP as qt}from"./BOCn_SGf.js";import{a as It,u as St,F as zt}from"./C6Eoiclo.js";import{c as wt,a as Bt,b as kt,P as Lt}from"./jTT1R-Vz.js";import{u as Ot}from"./BWqJInD3.js";import{L as Tt,a as Ft,b as Vt,i as At,c as Et,d as Pt,e as $t,f as Dt}from"./pwJTkIQ4.js";import{u as he}from"./DTR31rjp.js";import{c as Ne}from"./hCeWb_38.js";import{g as Nt}from"./DLHnP6tw.js";import{_ as Mt}from"./DqR9SdeU.js";function Ue(d){const f=w(()=>t(d)),r=w(()=>new Intl.Collator("en",{usage:"search",...f.value}));return{startsWith:(o,p)=>p.length===0?!0:(o=o.normalize("NFC"),p=p.normalize("NFC"),r.value.compare(o.slice(0,p.length),p)===0),endsWith:(o,p)=>p.length===0?!0:(o=o.normalize("NFC"),p=p.normalize("NFC"),r.value.compare(o.slice(-p.length),p)===0),contains:(o,p)=>{if(p.length===0)return!0;o=o.normalize("NFC"),p=p.normalize("NFC");let v=0;const L=p.length;for(;v+L<=o.length;v++){const h=o.slice(v,v+L);if(r.value.compare(p,h)===0)return!0}return!1}}}var Rt=k({__name:"ComboboxAnchor",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const{forwardRef:f}=X();return(r,e)=>(n(),m(t(wt),{"as-child":"",reference:r.reference},{default:c(()=>[_(t(ee),S({ref:t(f),"as-child":r.asChild,as:r.as},r.$attrs),{default:c(()=>[b(r.$slots,"default")]),_:3},16,["as-child","as"])]),_:3},8,["reference"]))}}),Kt=Rt;const[$,Gt]=Le("ComboboxRoot");var jt=k({__name:"ComboboxRoot",props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},openOnFocus:{type:Boolean,required:!1,default:!1},openOnClick:{type:Boolean,required:!1,default:!1},ignoreFilter:{type:Boolean,required:!1},resetModelValueOnClear:{type:Boolean,required:!1,default:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},multiple:{type:Boolean,required:!1},dir:{type:String,required:!1},disabled:{type:Boolean,required:!1},highlightOnHover:{type:Boolean,required:!1,default:!0},by:{type:[String,Function],required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:["update:modelValue","highlight","update:open"],setup(d,{expose:f,emit:r}){const e=d,l=r,{primitiveElement:i,currentElement:o}=Oe(),{multiple:p,disabled:v,ignoreFilter:L,resetSearchTermOnSelect:h,openOnFocus:T,openOnClick:O,dir:z,resetModelValueOnClear:g,highlightOnHover:F}=Re(e),te=Ot(z),R=Be(e,"modelValue",l,{defaultValue:e.defaultValue??(p.value?[]:void 0),passive:e.modelValue===void 0,deep:!0}),J=Be(e,"open",l,{defaultValue:e.defaultOpen,passive:e.open===void 0});async function xe(C){J.value=C,D.value="",C?(await ke(),i.value?.highlightSelected(),ae.value=!0,le.value?.focus()):(ae.value=!1,setTimeout(()=>{!C&&e.resetSearchTermOnBlur&&de.trigger()},1))}const de=at(),ae=N(!1),pe=N(!1),le=N(),ce=N(),fe=w(()=>i.value?.highlightedElement??void 0),ie=N(new Map),re=N(new Map),{contains:_e}=Ue({sensitivity:"base"}),D=N(""),oe=w(C=>{if(!D.value||e.ignoreFilter||pe.value)return{count:ie.value.size,items:C?.items??new Map,groups:C?.groups??new Set(re.value.keys())};let E=0;const P=new Map,G=new Set;for(const[se,Q]of ie.value){const u=_e(Q,D.value);P.set(se,u?1:0),u&&E++}for(const[se,Q]of re.value)for(const u of Q)if(P.get(u)>0){G.add(se);break}return{count:E,items:P,groups:G}}),K=tt();return Z(()=>{K?.exposed&&(K.exposed.highlightItem=i.value?.highlightItem,K.exposed.highlightFirstItem=i.value?.highlightFirstItem,K.exposed.highlightSelected=i.value?.highlightSelected)}),f({filtered:oe,highlightedElement:fe,highlightItem:i.value?.highlightItem,highlightFirstItem:i.value?.highlightFirstItem,highlightSelected:i.value?.highlightSelected}),Gt({modelValue:R,multiple:p,disabled:v,open:J,onOpenChange:xe,contentId:"",isUserInputted:ae,isVirtual:pe,inputElement:le,highlightedElement:fe,onInputElementChange:C=>le.value=C,triggerElement:ce,onTriggerElementChange:C=>ce.value=C,parentElement:o,resetSearchTermOnSelect:h,onResetSearchTerm:de.on,allItems:ie,allGroups:re,filterSearch:D,filterState:oe,ignoreFilter:L,openOnFocus:T,openOnClick:O,resetModelValueOnClear:g}),(C,E)=>(n(),m(t(Bt),null,{default:c(()=>[_(t(Tt),S({ref_key:"primitiveElement",ref:i},C.$attrs,{modelValue:t(R),"onUpdate:modelValue":E[0]||(E[0]=P=>Ke(R)?R.value=P:null),style:{pointerEvents:t(J)?"auto":void 0},as:C.as,"as-child":C.asChild,dir:t(te),multiple:t(p),name:C.name,required:C.required,disabled:t(v),"highlight-on-hover":t(F),by:e.by,onHighlight:E[1]||(E[1]=P=>l("highlight",P))}),{default:c(()=>[b(C.$slots,"default",{open:t(J),modelValue:t(R)})]),_:3},16,["modelValue","style","as","as-child","dir","multiple","name","required","disabled","highlight-on-hover","by"])]),_:3}))}}),Ut=jt;const[Wt,Ht]=Le("ComboboxContent");var Yt=k({__name:"ComboboxContentImpl",props:{position:{type:String,required:!1,default:"inline"},bodyLock:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside"],setup(d,{emit:f}){const r=d,e=f,{position:l}=Re(r),i=$(),{forwardRef:o,currentElement:p}=X();It(r.bodyLock),St(i.parentElement);const v=w(()=>r.position==="popper"?r:{}),L=lt(v.value),h={boxSizing:"border-box","--reka-combobox-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-combobox-content-available-width":"var(--reka-popper-available-width)","--reka-combobox-content-available-height":"var(--reka-popper-available-height)","--reka-combobox-trigger-width":"var(--reka-popper-anchor-width)","--reka-combobox-trigger-height":"var(--reka-popper-anchor-height)"};Ht({position:l});const T=N(!1);return Z(()=>{i.inputElement.value&&(T.value=p.value.contains(i.inputElement.value),T.value&&i.inputElement.value.focus())}),Te(()=>{T.value&&i.triggerElement.value?.focus()}),(O,z)=>(n(),m(t(Ft),{"as-child":""},{default:c(()=>[_(t(it),{"as-child":"","disable-outside-pointer-events":O.disableOutsidePointerEvents,onDismiss:z[0]||(z[0]=g=>t(i).onOpenChange(!1)),onFocusOutside:z[1]||(z[1]=g=>{t(i).parentElement.value?.contains(g.target)&&g.preventDefault(),e("focusOutside",g)}),onInteractOutside:z[2]||(z[2]=g=>e("interactOutside",g)),onEscapeKeyDown:z[3]||(z[3]=g=>e("escapeKeyDown",g)),onPointerDownOutside:z[4]||(z[4]=g=>{t(i).parentElement.value?.contains(g.target)&&g.preventDefault(),e("pointerDownOutside",g)})},{default:c(()=>[(n(),m(rt(t(l)==="popper"?t(kt):t(ee)),S({...O.$attrs,...t(L)},{id:t(i).contentId,ref:t(o),"data-state":t(i).open.value?"open":"closed",style:{display:"flex",flexDirection:"column",outline:"none",...t(l)==="popper"?h:{}}}),{default:c(()=>[b(O.$slots,"default")]),_:3},16,["id","data-state","style"]))]),_:3},8,["disable-outside-pointer-events"])]),_:3}))}}),Xt=Yt,Zt=k({__name:"ComboboxArrow",props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"svg"}},setup(d){const f=d,r=$(),e=Wt();return X(),(l,i)=>t(r).open.value&&t(e).position.value==="popper"?(n(),m(t(Lt),Y(S({key:0},f)),{default:c(()=>[b(l.$slots,"default")]),_:3},16)):B("v-if",!0)}}),Jt=Zt,Qt=k({__name:"ComboboxContent",props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside"],setup(d,{emit:f}){const l=Ge(d,f),{forwardRef:i}=X(),o=$();return o.contentId||=he(void 0,"reka-combobox-content"),(p,v)=>(n(),m(t(ot),{present:p.forceMount||t(o).open.value},{default:c(()=>[_(Xt,S({...t(l),...p.$attrs},{ref:t(i)}),{default:c(()=>[b(p.$slots,"default")]),_:3},16)]),_:3},8,["present"]))}}),ea=Qt,ta=k({__name:"ComboboxEmpty",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const f=d,r=$(),e=w(()=>r.ignoreFilter.value?r.allItems.value.size===0:r.filterState.value.count===0);return(l,i)=>e.value?(n(),m(t(ee),Y(S({key:0},f)),{default:c(()=>[b(l.$slots,"default",{},()=>[i[0]||(i[0]=H("No options"))])]),_:3},16)):B("v-if",!0)}}),aa=ta;const[We,la]=Le("ComboboxGroup");var ia=k({__name:"ComboboxGroup",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const f=d,r=he(void 0,"reka-combobox-group"),e=$(),l=w(()=>e.ignoreFilter.value?!0:e.filterSearch.value?e.filterState.value.groups.has(r):!0),i=la({id:r,labelId:""});return Z(()=>{e.allGroups.value.has(r)||e.allGroups.value.set(r,new Set)}),Te(()=>{e.allGroups.value.delete(r)}),(o,p)=>(n(),m(t(Vt),S({id:t(r),"aria-labelledby":t(i).labelId},f,{hidden:l.value?void 0:!0}),{default:c(()=>[b(o.$slots,"default")]),_:3},16,["id","aria-labelledby","hidden"]))}}),we=ia,ra=k({__name:"ComboboxInput",props:{displayValue:{type:Function,required:!1},modelValue:{type:String,required:!1},autoFocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"input"}},emits:["update:modelValue"],setup(d,{emit:f}){const r=d,e=f,l=$(),i=At(),{primitiveElement:o,currentElement:p}=Oe(),v=Be(r,"modelValue",e,{passive:r.modelValue===void 0});Z(()=>{p.value&&l.onInputElementChange(p.value)});function L(g){l.open.value||l.onOpenChange(!0)}function h(g){const F=g.target;l.open.value?l.filterSearch.value=F.value:(l.onOpenChange(!0),ke(()=>{F.value&&(l.filterSearch.value=F.value,i.highlightFirstItem())}))}function T(){l.openOnFocus.value&&!l.open.value&&l.onOpenChange(!0)}function O(){l.openOnClick.value&&!l.open.value&&l.onOpenChange(!0)}function z(){const g=l.modelValue.value;r.displayValue?v.value=r.displayValue(g):!l.multiple.value&&g&&!Array.isArray(g)&&typeof g!="object"?v.value=g.toString():v.value="",ke(()=>{v.value=v.value})}return l.onResetSearchTerm(()=>{z()}),Ae(l.modelValue,async()=>{!l.isUserInputted.value&&l.resetSearchTermOnSelect.value&&z()},{immediate:!0,deep:!0}),Ae(l.filterState,(g,F)=>{!l.isVirtual.value&&F.count===0&&i.highlightFirstItem()}),(g,F)=>(n(),m(t(Et),{ref_key:"primitiveElement",ref:o,modelValue:t(v),"onUpdate:modelValue":F[0]||(F[0]=te=>Ke(v)?v.value=te:null),as:g.as,"as-child":g.asChild,"auto-focus":g.autoFocus,disabled:g.disabled,"aria-expanded":t(l).open.value,"aria-controls":t(l).contentId,"aria-autocomplete":"list",role:"combobox",autocomplete:"off",onClick:O,onInput:h,onKeydown:st(je(L,["prevent"]),["down","up"]),onFocus:T},{default:c(()=>[b(g.$slots,"default")]),_:3},8,["modelValue","as","as-child","auto-focus","disabled","aria-expanded","aria-controls","onKeydown"]))}}),oa=ra,sa=k({__name:"ComboboxItem",props:{textValue:{type:String,required:!1},value:{type:null,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(d,{emit:f}){const r=d,e=f,l=he(void 0,"reka-combobox-item"),i=$(),o=We(null),{primitiveElement:p,currentElement:v}=Oe();if(r.value==="")throw new Error("A <ComboboxItem /> must have a value prop that is not an empty string. This is because the Combobox value can be set to an empty string to clear the selection and show the placeholder.");const L=w(()=>{if(i.isVirtual.value||i.ignoreFilter.value||!i.filterSearch.value)return!0;{const h=i.filterState.value.items.get(l);return h===void 0?!0:h>0}});return Z(()=>{i.allItems.value.set(l,r.textValue||v.value.textContent||v.value.innerText);const h=o?.id;h&&(i.allGroups.value.has(h)?i.allGroups.value.get(h)?.add(l):i.allGroups.value.set(h,new Set([l])))}),Te(()=>{i.allItems.value.delete(l)}),(h,T)=>L.value?(n(),m(t(Pt),S({key:0},r,{id:t(l),ref_key:"primitiveElement",ref:p,disabled:t(i).disabled.value||h.disabled,onSelect:T[0]||(T[0]=O=>{e("select",O),!O.defaultPrevented&&!t(i).multiple.value&&!h.disabled&&!t(i).disabled.value&&(O.preventDefault(),t(i).onOpenChange(!1),t(i).modelValue.value=r.value)})}),{default:c(()=>[b(h.$slots,"default",{},()=>[H(M(h.value),1)])]),_:3},16,["id","disabled"])):B("v-if",!0)}}),Me=sa,na=k({__name:"ComboboxItemIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(d){const f=d;return(r,e)=>(n(),m(t($t),Y(ue(f)),{default:c(()=>[b(r.$slots,"default")]),_:3},16))}}),ua=na,da=k({__name:"ComboboxLabel",props:{for:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(d){const f=d;X();const r=We({id:"",labelId:""});return r.labelId||=he(void 0,"reka-combobox-group-label"),(e,l)=>(n(),m(t(ee),S(f,{id:t(r).labelId}),{default:c(()=>[b(e.$slots,"default")]),_:3},16,["id"]))}}),pa=da,ca=k({__name:"ComboboxPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(d){const f=d;return(r,e)=>(n(),m(t(nt),Y(ue(f)),{default:c(()=>[b(r.$slots,"default")]),_:3},16))}}),fa=ca,ma=k({__name:"ComboboxSeparator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const f=d;return X(),(r,e)=>(n(),m(t(ee),S(f,{"aria-hidden":"true"}),{default:c(()=>[b(r.$slots,"default")]),_:3},16))}}),ga=ma,va=k({__name:"ComboboxTrigger",props:{disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(d){const f=d,{forwardRef:r,currentElement:e}=X(),l=$(),i=w(()=>f.disabled||l.disabled.value||!1);return Z(()=>{e.value&&l.onTriggerElementChange(e.value)}),(o,p)=>(n(),m(t(ee),S(f,{ref:t(r),type:o.as==="button"?"button":void 0,tabindex:"-1","aria-label":"Show popup","aria-haspopup":"listbox","aria-expanded":t(l).open.value,"aria-controls":t(l).contentId,"data-state":t(l).open.value?"open":"closed",disabled:i.value,"data-disabled":i.value?"":void 0,"aria-disabled":i.value??void 0,onClick:p[0]||(p[0]=v=>t(l).onOpenChange(!t(l).open.value))}),{default:c(()=>[b(o.$slots,"default")]),_:3},16,["type","aria-expanded","aria-controls","data-state","disabled","data-disabled","aria-disabled"]))}}),ba=va,ya=k({__name:"ComboboxVirtualizer",props:{options:{type:Array,required:!0},overscan:{type:Number,required:!1},estimateSize:{type:Number,required:!1},textContent:{type:Function,required:!1}},setup(d){const f=d,r=$();return r.isVirtual.value=!0,(e,l)=>(n(),m(Dt,Y(ue(f)),{default:c(i=>[b(e.$slots,"default",Y(ue(i)))]),_:3},16))}}),ha=ya;const xa={slots:{base:["relative group rounded-md inline-flex items-center focus:outline-none disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leading:"absolute inset-y-0 start-0 flex items-center",leadingIcon:"shrink-0 text-dimmed",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailing:"absolute inset-y-0 end-0 flex items-center",trailingIcon:"shrink-0 text-dimmed",value:"truncate pointer-events-none",placeholder:"truncate text-dimmed",arrow:"fill-default",content:["max-h-60 w-(--reka-select-trigger-width) bg-default shadow-lg rounded-md ring ring-default overflow-hidden data-[state=open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] origin-(--reka-select-content-transform-origin) pointer-events-auto flex flex-col","origin-(--reka-combobox-content-transform-origin) w-(--reka-combobox-trigger-width)"],viewport:"relative scroll-py-1 overflow-y-auto flex-1",group:"p-1 isolate",empty:"text-center text-muted",label:"font-semibold text-highlighted",separator:"-mx-1 my-1 h-px bg-border",item:["group relative w-full flex items-start select-none outline-none before:absolute before:z-[-1] before:inset-px before:rounded-md data-disabled:cursor-not-allowed data-disabled:opacity-75 text-default data-highlighted:not-data-disabled:text-highlighted data-highlighted:not-data-disabled:before:bg-elevated/50","transition-colors before:transition-colors"],itemLeadingIcon:["shrink-0 text-dimmed group-data-highlighted:not-group-data-disabled:text-default","transition-colors"],itemLeadingAvatar:"shrink-0",itemLeadingAvatarSize:"",itemLeadingChip:"shrink-0",itemLeadingChipSize:"",itemTrailing:"ms-auto inline-flex gap-1.5 items-center",itemTrailingIcon:"shrink-0",itemWrapper:"flex-1 flex flex-col min-w-0",itemLabel:"truncate",itemDescription:"truncate text-muted",input:"border-b border-default",focusScope:"flex flex-col min-h-0"},variants:{fieldGroup:{horizontal:"not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1]",vertical:"not-only:first:rounded-b-none not-only:last:rounded-t-none not-last:not-first:rounded-none focus-visible:z-[1]"},size:{xs:{base:"px-2 py-1 text-xs gap-1",leading:"ps-2",trailing:"pe-2",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",label:"p-1 text-[10px]/3 gap-1",item:"p-1 text-xs gap-1",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemLeadingChip:"size-4",itemLeadingChipSize:"sm",itemTrailingIcon:"size-4",empty:"p-1 text-xs"},sm:{base:"px-2.5 py-1.5 text-xs gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",label:"p-1.5 text-[10px]/3 gap-1.5",item:"p-1.5 text-xs gap-1.5",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemLeadingChip:"size-4",itemLeadingChipSize:"sm",itemTrailingIcon:"size-4",empty:"p-1.5 text-xs"},md:{base:"px-2.5 py-1.5 text-sm gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",label:"p-1.5 text-xs gap-1.5",item:"p-1.5 text-sm gap-1.5",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemLeadingChip:"size-5",itemLeadingChipSize:"md",itemTrailingIcon:"size-5",empty:"p-1.5 text-sm"},lg:{base:"px-3 py-2 text-sm gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",label:"p-2 text-xs gap-2",item:"p-2 text-sm gap-2",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemLeadingChip:"size-5",itemLeadingChipSize:"md",itemTrailingIcon:"size-5",empty:"p-2 text-sm"},xl:{base:"px-3 py-2 text-base gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6",label:"p-2 text-sm gap-2",item:"p-2 text-base gap-2",itemLeadingIcon:"size-6",itemLeadingAvatarSize:"xs",itemLeadingChip:"size-6",itemLeadingChipSize:"lg",itemTrailingIcon:"size-6",empty:"p-2 text-base"}},variant:{outline:"text-highlighted bg-default ring ring-inset ring-accented",soft:"text-highlighted bg-elevated/50 hover:bg-elevated focus:bg-elevated disabled:bg-elevated/50",subtle:"text-highlighted bg-elevated ring ring-inset ring-accented",ghost:"text-highlighted bg-transparent hover:bg-elevated focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent",none:"text-highlighted bg-transparent"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},leading:{true:""},trailing:{true:""},loading:{true:""},highlight:{true:""},type:{file:"file:me-1.5 file:font-medium file:text-muted file:outline-none"},virtualize:{true:{viewport:"p-1 isolate"},false:{viewport:"divide-y divide-default"}}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-success"},{color:"info",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-info"},{color:"warning",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-warning"},{color:"error",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-error"},{color:"primary",highlight:!0,class:"ring ring-inset ring-primary"},{color:"secondary",highlight:!0,class:"ring ring-inset ring-secondary"},{color:"success",highlight:!0,class:"ring ring-inset ring-success"},{color:"info",highlight:!0,class:"ring ring-inset ring-info"},{color:"warning",highlight:!0,class:"ring ring-inset ring-warning"},{color:"error",highlight:!0,class:"ring ring-inset ring-error"},{color:"neutral",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-inverted"},{color:"neutral",highlight:!0,class:"ring ring-inset ring-inverted"},{leading:!0,size:"xs",class:"ps-7"},{leading:!0,size:"sm",class:"ps-8"},{leading:!0,size:"md",class:"ps-9"},{leading:!0,size:"lg",class:"ps-10"},{leading:!0,size:"xl",class:"ps-11"},{trailing:!0,size:"xs",class:"pe-7"},{trailing:!0,size:"sm",class:"pe-8"},{trailing:!0,size:"md",class:"pe-9"},{trailing:!0,size:"lg",class:"pe-10"},{trailing:!0,size:"xl",class:"pe-11"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}}],defaultVariants:{size:"md",color:"primary",variant:"outline"}},La=Object.assign({inheritAttrs:!1},{__name:"USelectMenu",props:Ee({id:{type:String,required:!1},placeholder:{type:String,required:!1},searchInput:{type:[Boolean,Object],required:!1,default:!0},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},selectedIcon:{type:null,required:!1},content:{type:Object,required:!1},arrow:{type:[Boolean,Object],required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},virtualize:{type:[Boolean,Object],required:!1,default:!1},valueKey:{type:null,required:!1},labelKey:{type:null,required:!1,default:"label"},descriptionKey:{type:null,required:!1,default:"description"},items:{type:null,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1},modelModifiers:{type:Object,required:!1},multiple:{type:Boolean,required:!1},highlight:{type:Boolean,required:!1},createItem:{type:[Boolean,String,Object],required:!1},filterFields:{type:Array,required:!1},ignoreFilter:{type:Boolean,required:!1},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},class:{type:null,required:!1},ui:{type:null,required:!1},open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},highlightOnHover:{type:Boolean,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},{searchTerm:{type:String,default:""},searchTermModifiers:{}}),emits:Ee(["update:open","change","blur","focus","create","highlight","update:modelValue"],["update:searchTerm"]),setup(d,{expose:f,emit:r}){const e=d,l=r,i=ut(),o=dt(d,"searchTerm",{type:String,default:""}),{t:p}=pt(),v=ct(),{contains:L}=Ue({sensitivity:"base"}),h=Ge(ft(e,"modelValue","defaultValue","open","defaultOpen","required","multiple","resetSearchTermOnBlur","resetSearchTermOnSelect","highlightOnHover"),l),T=mt(j(()=>e.portal)),O=j(()=>be(e.content,{side:"bottom",sideOffset:8,collisionPadding:8,position:"popper"})),z=j(()=>e.arrow),g=j(()=>e.virtualize?be(typeof e.virtualize=="boolean"?{}:e.virtualize,{estimateSize:Nt(qe.value,e.size||"md",e.descriptionKey)}):!1),F=j(()=>be(e.searchInput,{placeholder:p("selectMenu.search"),variant:"none"})),{emitFormBlur:te,emitFormFocus:R,emitFormInput:J,emitFormChange:xe,size:de,color:ae,id:pe,name:le,highlight:ce,disabled:fe,ariaAttrs:ie}=gt(e),{orientation:re,size:_e}=vt(e),{isLeading:D,isTrailing:oe,leadingIconName:K,trailingIconName:C}=bt(j(()=>be(e,{trailingIcon:v.ui.icons.chevronDown}))),E=w(()=>_e.value||de.value),[P,G]=Ne(),[se,Q]=Ne({props:{item:{type:[Object,String,Number,Boolean],required:!0},index:{type:Number,required:!1}}}),u=w(()=>Pe({extend:Pe(xa),...v.ui?.selectMenu||{}})({color:ae.value,variant:e.variant,size:E?.value,loading:e.loading,highlight:ce.value,leading:D.value||!!e.avatar||!!i.leading,trailing:oe.value||!!i.trailing,fieldGroup:re.value,virtualize:!!e.virtualize}));function He(s){if(e.multiple&&Array.isArray(s)){const x=s.map(a=>De(qe.value,a,{labelKey:e.labelKey,valueKey:e.valueKey})).filter(a=>a!=null&&a!=="");return x.length>0?x.join(", "):void 0}return De(qe.value,s,{labelKey:e.labelKey,valueKey:e.valueKey})}const Ce=w(()=>e.items?.length?yt(e.items)?e.items:[e.items]:[]),qe=w(()=>Ce.value.flatMap(s=>s)),Fe=w(()=>{if(e.ignoreFilter||!o.value)return Ce.value;const s=Array.isArray(e.filterFields)?e.filterFields:[e.labelKey];return Ce.value.map(x=>x.filter(a=>a==null?!1:typeof a!="object"?L(String(a),o.value):a.type&&["label","separator"].includes(a.type)?!0:s.some(V=>{const q=U(a,V);return q!=null&&L(String(q),o.value)}))).filter(x=>x.filter(a=>!I(a)||!a.type||!["label","separator"].includes(a.type)).length>0)}),Ie=w(()=>Fe.value.flatMap(s=>s)),me=w(()=>{if(!e.createItem||!o.value)return!1;const s=e.valueKey?{[e.valueKey]:o.value}:o.value;return typeof e.createItem=="object"&&e.createItem.when==="always"||e.createItem==="always"?!Ie.value.find(x=>ht(x,s,e.valueKey)):!Ie.value.length}),ge=w(()=>typeof e.createItem=="object"?e.createItem.position:"bottom"),Se=xt("triggerRef");function Ye(){e.autofocus&&Se.value?.$el?.focus({focusVisible:!0})}Z(()=>{setTimeout(()=>{Ye()},e.autofocusDelay)});function Xe(s){if(Ct(e.modelValue)===s)return;e.modelModifiers?.trim&&(s=s?.trim()??null),e.modelModifiers?.number&&(s=qt(s)),e.modelModifiers?.nullable&&(s??=null),e.modelModifiers?.optional&&(s??=void 0);const x=new Event("change",{target:{value:s}});l("change",x),xe(),J(),e.resetSearchTermOnSelect&&(o.value="")}function Ze(s){let x;if(s){const a=new FocusEvent("focus");l("focus",a),R(),clearTimeout(x)}else{const a=new FocusEvent("blur");l("blur",a),te(),e.resetSearchTermOnBlur&&(x=setTimeout(()=>{o.value=""},100))}}function Je(s){s.preventDefault(),s.stopPropagation(),l("create",o.value)}function Qe(s,x){if(I(x)){if(x.disabled){s.preventDefault();return}x.onSelect?.(s)}}function I(s){return typeof s=="object"&&s!==null}return f({triggerRef:j(()=>Se.value?.$el)}),(s,x)=>(n(),A(W,null,[_(t(P),null,{default:c(()=>[_(t(Me),{"data-slot":"item",class:y(u.value.item({class:e.ui?.item})),value:o.value,onSelect:Je},{default:c(()=>[ne("span",{"data-slot":"itemLabel",class:y(u.value.itemLabel({class:e.ui?.itemLabel}))},[b(s.$slots,"create-item-label",{item:o.value},()=>[H(M(t(p)("selectMenu.create",{label:o.value})),1)])],2)]),_:3},8,["class","value"])]),_:3}),_(t(se),null,{default:c(({item:a,index:V})=>[I(a)&&a.type==="label"?(n(),m(t(pa),{key:0,"data-slot":"label",class:y(u.value.label({class:[e.ui?.label,a.ui?.label,a.class]}))},{default:c(()=>[H(M(t(U)(a,e.labelKey)),1)]),_:2},1032,["class"])):I(a)&&a.type==="separator"?(n(),m(t(ga),{key:1,"data-slot":"separator",class:y(u.value.separator({class:[e.ui?.separator,a.ui?.separator,a.class]}))},null,8,["class"])):(n(),m(t(Me),{key:2,"data-slot":"item",class:y(u.value.item({class:[e.ui?.item,I(a)&&a.ui?.item,I(a)&&a.class]})),disabled:I(a)&&a.disabled,value:e.valueKey&&I(a)?t(U)(a,e.valueKey):a,onSelect:q=>Qe(q,a)},{default:c(()=>[b(s.$slots,"item",{item:a,index:V,ui:u.value},()=>[b(s.$slots,"item-leading",{item:a,index:V,ui:u.value},()=>[I(a)&&a.icon?(n(),m(ye,{key:0,name:a.icon,"data-slot":"itemLeadingIcon",class:y(u.value.itemLeadingIcon({class:[e.ui?.itemLeadingIcon,a.ui?.itemLeadingIcon]}))},null,8,["name","class"])):I(a)&&a.avatar?(n(),m($e,S({key:1,size:a.ui?.itemLeadingAvatarSize||e.ui?.itemLeadingAvatarSize||u.value.itemLeadingAvatarSize()},a.avatar,{"data-slot":"itemLeadingAvatar",class:u.value.itemLeadingAvatar({class:[e.ui?.itemLeadingAvatar,a.ui?.itemLeadingAvatar]})}),null,16,["size","class"])):I(a)&&a.chip?(n(),m(_t,S({key:2,size:e.ui?.itemLeadingChipSize||u.value.itemLeadingChipSize(),inset:"",standalone:""},a.chip,{"data-slot":"itemLeadingChip",class:u.value.itemLeadingChip({class:[e.ui?.itemLeadingChip,a.ui?.itemLeadingChip]})}),null,16,["size","class"])):B("",!0)]),ne("span",{"data-slot":"itemWrapper",class:y(u.value.itemWrapper({class:[e.ui?.itemWrapper,I(a)&&a.ui?.itemWrapper]}))},[ne("span",{"data-slot":"itemLabel",class:y(u.value.itemLabel({class:[e.ui?.itemLabel,I(a)&&a.ui?.itemLabel]}))},[b(s.$slots,"item-label",{item:a,index:V},()=>[H(M(I(a)?t(U)(a,e.labelKey):a),1)])],2),I(a)&&(t(U)(a,e.descriptionKey)||i["item-description"])?(n(),A("span",{key:0,"data-slot":"itemDescription",class:y(u.value.itemDescription({class:[e.ui?.itemDescription,I(a)&&a.ui?.itemDescription]}))},[b(s.$slots,"item-description",{item:a,index:V},()=>[H(M(t(U)(a,e.descriptionKey)),1)])],2)):B("",!0)],2),ne("span",{"data-slot":"itemTrailing",class:y(u.value.itemTrailing({class:[e.ui?.itemTrailing,I(a)&&a.ui?.itemTrailing]}))},[b(s.$slots,"item-trailing",{item:a,index:V,ui:u.value}),_(t(ua),{"as-child":""},{default:c(()=>[_(ye,{name:d.selectedIcon||t(v).ui.icons.check,"data-slot":"itemTrailingIcon",class:y(u.value.itemTrailingIcon({class:[e.ui?.itemTrailingIcon,I(a)&&a.ui?.itemTrailingIcon]}))},null,8,["name","class"])]),_:2},1024)],2)])]),_:2},1032,["class","disabled","value","onSelect"]))]),_:3}),_(t(Ut),S({id:t(pe)},{...t(h),...s.$attrs,...t(ie)},{"ignore-filter":"","as-child":"",name:t(le),disabled:t(fe),"onUpdate:modelValue":Xe,"onUpdate:open":Ze}),{default:c(({modelValue:a,open:V})=>[_(t(Kt),{"as-child":""},{default:c(()=>[_(t(ba),{ref_key:"triggerRef",ref:Se,"data-slot":"base",class:y(u.value.base({class:[e.ui?.base,e.class]})),tabindex:"0"},{default:c(()=>[t(D)||d.avatar||i.leading?(n(),A("span",{key:0,"data-slot":"leading",class:y(u.value.leading({class:e.ui?.leading}))},[b(s.$slots,"leading",{modelValue:a,open:V,ui:u.value},()=>[t(D)&&t(K)?(n(),m(ye,{key:0,name:t(K),"data-slot":"leadingIcon",class:y(u.value.leadingIcon({class:e.ui?.leadingIcon}))},null,8,["name","class"])):d.avatar?(n(),m($e,S({key:1,size:e.ui?.itemLeadingAvatarSize||u.value.itemLeadingAvatarSize()},d.avatar,{"data-slot":"itemLeadingAvatar",class:u.value.itemLeadingAvatar({class:e.ui?.itemLeadingAvatar})}),null,16,["size","class"])):B("",!0)])],2)):B("",!0),b(s.$slots,"default",{modelValue:a,open:V,ui:u.value},()=>[(n(!0),A(W,null,ze([He(a)],q=>(n(),A(W,{key:q},[q!=null?(n(),A("span",{key:0,"data-slot":"value",class:y(u.value.value({class:e.ui?.value}))},M(q),3)):(n(),A("span",{key:1,"data-slot":"placeholder",class:y(u.value.placeholder({class:e.ui?.placeholder}))},M(d.placeholder??" "),3))],64))),128))]),t(oe)||i.trailing?(n(),A("span",{key:1,"data-slot":"trailing",class:y(u.value.trailing({class:e.ui?.trailing}))},[b(s.$slots,"trailing",{modelValue:a,open:V,ui:u.value},()=>[t(C)?(n(),m(ye,{key:0,name:t(C),"data-slot":"trailingIcon",class:y(u.value.trailingIcon({class:e.ui?.trailingIcon}))},null,8,["name","class"])):B("",!0)])],2)):B("",!0)]),_:2},1032,["class"])]),_:2},1024),_(t(fa),Y(ue(t(T))),{default:c(()=>[_(t(ea),S({"data-slot":"content",class:u.value.content({class:e.ui?.content})},O.value),{default:c(()=>[_(t(zt),{trapped:"","data-slot":"focusScope",class:y(u.value.focusScope({class:e.ui?.focusScope}))},{default:c(()=>[b(s.$slots,"content-top"),d.searchInput?(n(),m(t(oa),{key:0,modelValue:o.value,"onUpdate:modelValue":x[1]||(x[1]=q=>o.value=q),"display-value":()=>o.value,"as-child":""},{default:c(()=>[_(Mt,S({autofocus:"",autocomplete:"off",size:d.size},F.value,{"data-slot":"input",class:u.value.input({class:e.ui?.input}),onChange:x[0]||(x[0]=je(()=>{},["stop"]))}),null,16,["size","class"])]),_:1},8,["modelValue","display-value"])):B("",!0),_(t(aa),{"data-slot":"empty",class:y(u.value.empty({class:e.ui?.empty}))},{default:c(()=>[b(s.$slots,"empty",{searchTerm:o.value},()=>[H(M(o.value?t(p)("selectMenu.noMatch",{searchTerm:o.value}):t(p)("selectMenu.noData")),1)])]),_:3},8,["class"]),ne("div",{role:"presentation","data-slot":"viewport",class:y(u.value.viewport({class:e.ui?.viewport}))},[d.virtualize?(n(),A(W,{key:0},[me.value&&ge.value==="top"?(n(),m(t(G),{key:0})):B("",!0),_(t(ha),S({options:Ie.value,"text-content":q=>I(q)?t(U)(q,e.labelKey):String(q)},g.value),{default:c(({option:q,virtualItem:ve})=>[_(t(Q),{item:q,index:ve.index},null,8,["item","index"])]),_:1},16,["options","text-content"]),me.value&&ge.value==="bottom"?(n(),m(t(G),{key:1})):B("",!0)],64)):(n(),A(W,{key:1},[me.value&&ge.value==="top"?(n(),m(t(we),{key:0,"data-slot":"group",class:y(u.value.group({class:e.ui?.group}))},{default:c(()=>[_(t(G))]),_:1},8,["class"])):B("",!0),(n(!0),A(W,null,ze(Fe.value,(q,ve)=>(n(),m(t(we),{key:`group-${ve}`,"data-slot":"group",class:y(u.value.group({class:e.ui?.group}))},{default:c(()=>[(n(!0),A(W,null,ze(q,(et,Ve)=>(n(),m(t(Q),{key:`group-${ve}-${Ve}`,item:et,index:Ve},null,8,["item","index"]))),128))]),_:2},1032,["class"]))),128)),me.value&&ge.value==="bottom"?(n(),m(t(we),{key:1,"data-slot":"group",class:y(u.value.group({class:e.ui?.group}))},{default:c(()=>[_(t(G))]),_:1},8,["class"])):B("",!0)],64))],2),b(s.$slots,"content-bottom")]),_:3},8,["class"]),d.arrow?(n(),m(t(Jt),S({key:0},z.value,{"data-slot":"arrow",class:u.value.arrow({class:e.ui?.arrow})}),null,16,["class"])):B("",!0)]),_:3},16,["class"])]),_:3},16)]),_:3},16,["id","name","disabled"])],64))}});export{La as _};
1
+ import{i as w,a as t,d as k,u as X,c as m,o as n,w as c,Z as _,P as ee,m as S,r as b,aQ as Le,aT as Oe,aR as Re,aS as Be,e as N,C as Z,g as tt,bn as at,ak as Ke,B as ke,X as lt,a5 as Te,bF as it,aY as rt,aa as B,aL as Y,aG as Ge,bg as ot,ab as H,h as Ae,bm as st,ao as je,af as M,aM as ue,b6 as nt,aU as Ee,ax as ut,aV as dt,U as pt,W as ct,aH as ft,aI as mt,au as j,aZ as be,aN as gt,aD as vt,aE as bt,ap as Pe,b8 as yt,a1 as U,bW as ht,aO as xt,M as A,$ as y,ac as ne,_ as ye,aF as $e,bX as _t,al as W,am as ze,bY as De,J as Ct,aP as qt}from"./CBqC92gC.js";import{a as It,u as St,F as zt}from"./Cyo4VJ6S.js";import{c as wt,a as Bt,b as kt,P as Lt}from"./DWnLv2oh.js";import{u as Ot}from"./B9OPrqTh.js";import{L as Tt,a as Ft,b as Vt,i as At,c as Et,d as Pt,e as $t,f as Dt}from"./Dm5HyQgM.js";import{u as he}from"./BoqEl-F1.js";import{c as Ne}from"./DUf0f355.js";import{g as Nt}from"./BA646MN4.js";import{_ as Mt}from"./4Vi9hKJC.js";function Ue(d){const f=w(()=>t(d)),r=w(()=>new Intl.Collator("en",{usage:"search",...f.value}));return{startsWith:(o,p)=>p.length===0?!0:(o=o.normalize("NFC"),p=p.normalize("NFC"),r.value.compare(o.slice(0,p.length),p)===0),endsWith:(o,p)=>p.length===0?!0:(o=o.normalize("NFC"),p=p.normalize("NFC"),r.value.compare(o.slice(-p.length),p)===0),contains:(o,p)=>{if(p.length===0)return!0;o=o.normalize("NFC"),p=p.normalize("NFC");let v=0;const L=p.length;for(;v+L<=o.length;v++){const h=o.slice(v,v+L);if(r.value.compare(p,h)===0)return!0}return!1}}}var Rt=k({__name:"ComboboxAnchor",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const{forwardRef:f}=X();return(r,e)=>(n(),m(t(wt),{"as-child":"",reference:r.reference},{default:c(()=>[_(t(ee),S({ref:t(f),"as-child":r.asChild,as:r.as},r.$attrs),{default:c(()=>[b(r.$slots,"default")]),_:3},16,["as-child","as"])]),_:3},8,["reference"]))}}),Kt=Rt;const[$,Gt]=Le("ComboboxRoot");var jt=k({__name:"ComboboxRoot",props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},openOnFocus:{type:Boolean,required:!1,default:!1},openOnClick:{type:Boolean,required:!1,default:!1},ignoreFilter:{type:Boolean,required:!1},resetModelValueOnClear:{type:Boolean,required:!1,default:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},multiple:{type:Boolean,required:!1},dir:{type:String,required:!1},disabled:{type:Boolean,required:!1},highlightOnHover:{type:Boolean,required:!1,default:!0},by:{type:[String,Function],required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:["update:modelValue","highlight","update:open"],setup(d,{expose:f,emit:r}){const e=d,l=r,{primitiveElement:i,currentElement:o}=Oe(),{multiple:p,disabled:v,ignoreFilter:L,resetSearchTermOnSelect:h,openOnFocus:T,openOnClick:O,dir:z,resetModelValueOnClear:g,highlightOnHover:F}=Re(e),te=Ot(z),R=Be(e,"modelValue",l,{defaultValue:e.defaultValue??(p.value?[]:void 0),passive:e.modelValue===void 0,deep:!0}),J=Be(e,"open",l,{defaultValue:e.defaultOpen,passive:e.open===void 0});async function xe(C){J.value=C,D.value="",C?(await ke(),i.value?.highlightSelected(),ae.value=!0,le.value?.focus()):(ae.value=!1,setTimeout(()=>{!C&&e.resetSearchTermOnBlur&&de.trigger()},1))}const de=at(),ae=N(!1),pe=N(!1),le=N(),ce=N(),fe=w(()=>i.value?.highlightedElement??void 0),ie=N(new Map),re=N(new Map),{contains:_e}=Ue({sensitivity:"base"}),D=N(""),oe=w(C=>{if(!D.value||e.ignoreFilter||pe.value)return{count:ie.value.size,items:C?.items??new Map,groups:C?.groups??new Set(re.value.keys())};let E=0;const P=new Map,G=new Set;for(const[se,Q]of ie.value){const u=_e(Q,D.value);P.set(se,u?1:0),u&&E++}for(const[se,Q]of re.value)for(const u of Q)if(P.get(u)>0){G.add(se);break}return{count:E,items:P,groups:G}}),K=tt();return Z(()=>{K?.exposed&&(K.exposed.highlightItem=i.value?.highlightItem,K.exposed.highlightFirstItem=i.value?.highlightFirstItem,K.exposed.highlightSelected=i.value?.highlightSelected)}),f({filtered:oe,highlightedElement:fe,highlightItem:i.value?.highlightItem,highlightFirstItem:i.value?.highlightFirstItem,highlightSelected:i.value?.highlightSelected}),Gt({modelValue:R,multiple:p,disabled:v,open:J,onOpenChange:xe,contentId:"",isUserInputted:ae,isVirtual:pe,inputElement:le,highlightedElement:fe,onInputElementChange:C=>le.value=C,triggerElement:ce,onTriggerElementChange:C=>ce.value=C,parentElement:o,resetSearchTermOnSelect:h,onResetSearchTerm:de.on,allItems:ie,allGroups:re,filterSearch:D,filterState:oe,ignoreFilter:L,openOnFocus:T,openOnClick:O,resetModelValueOnClear:g}),(C,E)=>(n(),m(t(Bt),null,{default:c(()=>[_(t(Tt),S({ref_key:"primitiveElement",ref:i},C.$attrs,{modelValue:t(R),"onUpdate:modelValue":E[0]||(E[0]=P=>Ke(R)?R.value=P:null),style:{pointerEvents:t(J)?"auto":void 0},as:C.as,"as-child":C.asChild,dir:t(te),multiple:t(p),name:C.name,required:C.required,disabled:t(v),"highlight-on-hover":t(F),by:e.by,onHighlight:E[1]||(E[1]=P=>l("highlight",P))}),{default:c(()=>[b(C.$slots,"default",{open:t(J),modelValue:t(R)})]),_:3},16,["modelValue","style","as","as-child","dir","multiple","name","required","disabled","highlight-on-hover","by"])]),_:3}))}}),Ut=jt;const[Wt,Ht]=Le("ComboboxContent");var Yt=k({__name:"ComboboxContentImpl",props:{position:{type:String,required:!1,default:"inline"},bodyLock:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside"],setup(d,{emit:f}){const r=d,e=f,{position:l}=Re(r),i=$(),{forwardRef:o,currentElement:p}=X();It(r.bodyLock),St(i.parentElement);const v=w(()=>r.position==="popper"?r:{}),L=lt(v.value),h={boxSizing:"border-box","--reka-combobox-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-combobox-content-available-width":"var(--reka-popper-available-width)","--reka-combobox-content-available-height":"var(--reka-popper-available-height)","--reka-combobox-trigger-width":"var(--reka-popper-anchor-width)","--reka-combobox-trigger-height":"var(--reka-popper-anchor-height)"};Ht({position:l});const T=N(!1);return Z(()=>{i.inputElement.value&&(T.value=p.value.contains(i.inputElement.value),T.value&&i.inputElement.value.focus())}),Te(()=>{T.value&&i.triggerElement.value?.focus()}),(O,z)=>(n(),m(t(Ft),{"as-child":""},{default:c(()=>[_(t(it),{"as-child":"","disable-outside-pointer-events":O.disableOutsidePointerEvents,onDismiss:z[0]||(z[0]=g=>t(i).onOpenChange(!1)),onFocusOutside:z[1]||(z[1]=g=>{t(i).parentElement.value?.contains(g.target)&&g.preventDefault(),e("focusOutside",g)}),onInteractOutside:z[2]||(z[2]=g=>e("interactOutside",g)),onEscapeKeyDown:z[3]||(z[3]=g=>e("escapeKeyDown",g)),onPointerDownOutside:z[4]||(z[4]=g=>{t(i).parentElement.value?.contains(g.target)&&g.preventDefault(),e("pointerDownOutside",g)})},{default:c(()=>[(n(),m(rt(t(l)==="popper"?t(kt):t(ee)),S({...O.$attrs,...t(L)},{id:t(i).contentId,ref:t(o),"data-state":t(i).open.value?"open":"closed",style:{display:"flex",flexDirection:"column",outline:"none",...t(l)==="popper"?h:{}}}),{default:c(()=>[b(O.$slots,"default")]),_:3},16,["id","data-state","style"]))]),_:3},8,["disable-outside-pointer-events"])]),_:3}))}}),Xt=Yt,Zt=k({__name:"ComboboxArrow",props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"svg"}},setup(d){const f=d,r=$(),e=Wt();return X(),(l,i)=>t(r).open.value&&t(e).position.value==="popper"?(n(),m(t(Lt),Y(S({key:0},f)),{default:c(()=>[b(l.$slots,"default")]),_:3},16)):B("v-if",!0)}}),Jt=Zt,Qt=k({__name:"ComboboxContent",props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside"],setup(d,{emit:f}){const l=Ge(d,f),{forwardRef:i}=X(),o=$();return o.contentId||=he(void 0,"reka-combobox-content"),(p,v)=>(n(),m(t(ot),{present:p.forceMount||t(o).open.value},{default:c(()=>[_(Xt,S({...t(l),...p.$attrs},{ref:t(i)}),{default:c(()=>[b(p.$slots,"default")]),_:3},16)]),_:3},8,["present"]))}}),ea=Qt,ta=k({__name:"ComboboxEmpty",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const f=d,r=$(),e=w(()=>r.ignoreFilter.value?r.allItems.value.size===0:r.filterState.value.count===0);return(l,i)=>e.value?(n(),m(t(ee),Y(S({key:0},f)),{default:c(()=>[b(l.$slots,"default",{},()=>[i[0]||(i[0]=H("No options"))])]),_:3},16)):B("v-if",!0)}}),aa=ta;const[We,la]=Le("ComboboxGroup");var ia=k({__name:"ComboboxGroup",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const f=d,r=he(void 0,"reka-combobox-group"),e=$(),l=w(()=>e.ignoreFilter.value?!0:e.filterSearch.value?e.filterState.value.groups.has(r):!0),i=la({id:r,labelId:""});return Z(()=>{e.allGroups.value.has(r)||e.allGroups.value.set(r,new Set)}),Te(()=>{e.allGroups.value.delete(r)}),(o,p)=>(n(),m(t(Vt),S({id:t(r),"aria-labelledby":t(i).labelId},f,{hidden:l.value?void 0:!0}),{default:c(()=>[b(o.$slots,"default")]),_:3},16,["id","aria-labelledby","hidden"]))}}),we=ia,ra=k({__name:"ComboboxInput",props:{displayValue:{type:Function,required:!1},modelValue:{type:String,required:!1},autoFocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"input"}},emits:["update:modelValue"],setup(d,{emit:f}){const r=d,e=f,l=$(),i=At(),{primitiveElement:o,currentElement:p}=Oe(),v=Be(r,"modelValue",e,{passive:r.modelValue===void 0});Z(()=>{p.value&&l.onInputElementChange(p.value)});function L(g){l.open.value||l.onOpenChange(!0)}function h(g){const F=g.target;l.open.value?l.filterSearch.value=F.value:(l.onOpenChange(!0),ke(()=>{F.value&&(l.filterSearch.value=F.value,i.highlightFirstItem())}))}function T(){l.openOnFocus.value&&!l.open.value&&l.onOpenChange(!0)}function O(){l.openOnClick.value&&!l.open.value&&l.onOpenChange(!0)}function z(){const g=l.modelValue.value;r.displayValue?v.value=r.displayValue(g):!l.multiple.value&&g&&!Array.isArray(g)&&typeof g!="object"?v.value=g.toString():v.value="",ke(()=>{v.value=v.value})}return l.onResetSearchTerm(()=>{z()}),Ae(l.modelValue,async()=>{!l.isUserInputted.value&&l.resetSearchTermOnSelect.value&&z()},{immediate:!0,deep:!0}),Ae(l.filterState,(g,F)=>{!l.isVirtual.value&&F.count===0&&i.highlightFirstItem()}),(g,F)=>(n(),m(t(Et),{ref_key:"primitiveElement",ref:o,modelValue:t(v),"onUpdate:modelValue":F[0]||(F[0]=te=>Ke(v)?v.value=te:null),as:g.as,"as-child":g.asChild,"auto-focus":g.autoFocus,disabled:g.disabled,"aria-expanded":t(l).open.value,"aria-controls":t(l).contentId,"aria-autocomplete":"list",role:"combobox",autocomplete:"off",onClick:O,onInput:h,onKeydown:st(je(L,["prevent"]),["down","up"]),onFocus:T},{default:c(()=>[b(g.$slots,"default")]),_:3},8,["modelValue","as","as-child","auto-focus","disabled","aria-expanded","aria-controls","onKeydown"]))}}),oa=ra,sa=k({__name:"ComboboxItem",props:{textValue:{type:String,required:!1},value:{type:null,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(d,{emit:f}){const r=d,e=f,l=he(void 0,"reka-combobox-item"),i=$(),o=We(null),{primitiveElement:p,currentElement:v}=Oe();if(r.value==="")throw new Error("A <ComboboxItem /> must have a value prop that is not an empty string. This is because the Combobox value can be set to an empty string to clear the selection and show the placeholder.");const L=w(()=>{if(i.isVirtual.value||i.ignoreFilter.value||!i.filterSearch.value)return!0;{const h=i.filterState.value.items.get(l);return h===void 0?!0:h>0}});return Z(()=>{i.allItems.value.set(l,r.textValue||v.value.textContent||v.value.innerText);const h=o?.id;h&&(i.allGroups.value.has(h)?i.allGroups.value.get(h)?.add(l):i.allGroups.value.set(h,new Set([l])))}),Te(()=>{i.allItems.value.delete(l)}),(h,T)=>L.value?(n(),m(t(Pt),S({key:0},r,{id:t(l),ref_key:"primitiveElement",ref:p,disabled:t(i).disabled.value||h.disabled,onSelect:T[0]||(T[0]=O=>{e("select",O),!O.defaultPrevented&&!t(i).multiple.value&&!h.disabled&&!t(i).disabled.value&&(O.preventDefault(),t(i).onOpenChange(!1),t(i).modelValue.value=r.value)})}),{default:c(()=>[b(h.$slots,"default",{},()=>[H(M(h.value),1)])]),_:3},16,["id","disabled"])):B("v-if",!0)}}),Me=sa,na=k({__name:"ComboboxItemIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(d){const f=d;return(r,e)=>(n(),m(t($t),Y(ue(f)),{default:c(()=>[b(r.$slots,"default")]),_:3},16))}}),ua=na,da=k({__name:"ComboboxLabel",props:{for:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(d){const f=d;X();const r=We({id:"",labelId:""});return r.labelId||=he(void 0,"reka-combobox-group-label"),(e,l)=>(n(),m(t(ee),S(f,{id:t(r).labelId}),{default:c(()=>[b(e.$slots,"default")]),_:3},16,["id"]))}}),pa=da,ca=k({__name:"ComboboxPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(d){const f=d;return(r,e)=>(n(),m(t(nt),Y(ue(f)),{default:c(()=>[b(r.$slots,"default")]),_:3},16))}}),fa=ca,ma=k({__name:"ComboboxSeparator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const f=d;return X(),(r,e)=>(n(),m(t(ee),S(f,{"aria-hidden":"true"}),{default:c(()=>[b(r.$slots,"default")]),_:3},16))}}),ga=ma,va=k({__name:"ComboboxTrigger",props:{disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(d){const f=d,{forwardRef:r,currentElement:e}=X(),l=$(),i=w(()=>f.disabled||l.disabled.value||!1);return Z(()=>{e.value&&l.onTriggerElementChange(e.value)}),(o,p)=>(n(),m(t(ee),S(f,{ref:t(r),type:o.as==="button"?"button":void 0,tabindex:"-1","aria-label":"Show popup","aria-haspopup":"listbox","aria-expanded":t(l).open.value,"aria-controls":t(l).contentId,"data-state":t(l).open.value?"open":"closed",disabled:i.value,"data-disabled":i.value?"":void 0,"aria-disabled":i.value??void 0,onClick:p[0]||(p[0]=v=>t(l).onOpenChange(!t(l).open.value))}),{default:c(()=>[b(o.$slots,"default")]),_:3},16,["type","aria-expanded","aria-controls","data-state","disabled","data-disabled","aria-disabled"]))}}),ba=va,ya=k({__name:"ComboboxVirtualizer",props:{options:{type:Array,required:!0},overscan:{type:Number,required:!1},estimateSize:{type:Number,required:!1},textContent:{type:Function,required:!1}},setup(d){const f=d,r=$();return r.isVirtual.value=!0,(e,l)=>(n(),m(Dt,Y(ue(f)),{default:c(i=>[b(e.$slots,"default",Y(ue(i)))]),_:3},16))}}),ha=ya;const xa={slots:{base:["relative group rounded-md inline-flex items-center focus:outline-none disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leading:"absolute inset-y-0 start-0 flex items-center",leadingIcon:"shrink-0 text-dimmed",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailing:"absolute inset-y-0 end-0 flex items-center",trailingIcon:"shrink-0 text-dimmed",value:"truncate pointer-events-none",placeholder:"truncate text-dimmed",arrow:"fill-default",content:["max-h-60 w-(--reka-select-trigger-width) bg-default shadow-lg rounded-md ring ring-default overflow-hidden data-[state=open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] origin-(--reka-select-content-transform-origin) pointer-events-auto flex flex-col","origin-(--reka-combobox-content-transform-origin) w-(--reka-combobox-trigger-width)"],viewport:"relative scroll-py-1 overflow-y-auto flex-1",group:"p-1 isolate",empty:"text-center text-muted",label:"font-semibold text-highlighted",separator:"-mx-1 my-1 h-px bg-border",item:["group relative w-full flex items-start select-none outline-none before:absolute before:z-[-1] before:inset-px before:rounded-md data-disabled:cursor-not-allowed data-disabled:opacity-75 text-default data-highlighted:not-data-disabled:text-highlighted data-highlighted:not-data-disabled:before:bg-elevated/50","transition-colors before:transition-colors"],itemLeadingIcon:["shrink-0 text-dimmed group-data-highlighted:not-group-data-disabled:text-default","transition-colors"],itemLeadingAvatar:"shrink-0",itemLeadingAvatarSize:"",itemLeadingChip:"shrink-0",itemLeadingChipSize:"",itemTrailing:"ms-auto inline-flex gap-1.5 items-center",itemTrailingIcon:"shrink-0",itemWrapper:"flex-1 flex flex-col min-w-0",itemLabel:"truncate",itemDescription:"truncate text-muted",input:"border-b border-default",focusScope:"flex flex-col min-h-0"},variants:{fieldGroup:{horizontal:"not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1]",vertical:"not-only:first:rounded-b-none not-only:last:rounded-t-none not-last:not-first:rounded-none focus-visible:z-[1]"},size:{xs:{base:"px-2 py-1 text-xs gap-1",leading:"ps-2",trailing:"pe-2",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",label:"p-1 text-[10px]/3 gap-1",item:"p-1 text-xs gap-1",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemLeadingChip:"size-4",itemLeadingChipSize:"sm",itemTrailingIcon:"size-4",empty:"p-1 text-xs"},sm:{base:"px-2.5 py-1.5 text-xs gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",label:"p-1.5 text-[10px]/3 gap-1.5",item:"p-1.5 text-xs gap-1.5",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemLeadingChip:"size-4",itemLeadingChipSize:"sm",itemTrailingIcon:"size-4",empty:"p-1.5 text-xs"},md:{base:"px-2.5 py-1.5 text-sm gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",label:"p-1.5 text-xs gap-1.5",item:"p-1.5 text-sm gap-1.5",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemLeadingChip:"size-5",itemLeadingChipSize:"md",itemTrailingIcon:"size-5",empty:"p-1.5 text-sm"},lg:{base:"px-3 py-2 text-sm gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",label:"p-2 text-xs gap-2",item:"p-2 text-sm gap-2",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemLeadingChip:"size-5",itemLeadingChipSize:"md",itemTrailingIcon:"size-5",empty:"p-2 text-sm"},xl:{base:"px-3 py-2 text-base gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6",label:"p-2 text-sm gap-2",item:"p-2 text-base gap-2",itemLeadingIcon:"size-6",itemLeadingAvatarSize:"xs",itemLeadingChip:"size-6",itemLeadingChipSize:"lg",itemTrailingIcon:"size-6",empty:"p-2 text-base"}},variant:{outline:"text-highlighted bg-default ring ring-inset ring-accented",soft:"text-highlighted bg-elevated/50 hover:bg-elevated focus:bg-elevated disabled:bg-elevated/50",subtle:"text-highlighted bg-elevated ring ring-inset ring-accented",ghost:"text-highlighted bg-transparent hover:bg-elevated focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent",none:"text-highlighted bg-transparent"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},leading:{true:""},trailing:{true:""},loading:{true:""},highlight:{true:""},type:{file:"file:me-1.5 file:font-medium file:text-muted file:outline-none"},virtualize:{true:{viewport:"p-1 isolate"},false:{viewport:"divide-y divide-default"}}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-success"},{color:"info",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-info"},{color:"warning",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-warning"},{color:"error",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-error"},{color:"primary",highlight:!0,class:"ring ring-inset ring-primary"},{color:"secondary",highlight:!0,class:"ring ring-inset ring-secondary"},{color:"success",highlight:!0,class:"ring ring-inset ring-success"},{color:"info",highlight:!0,class:"ring ring-inset ring-info"},{color:"warning",highlight:!0,class:"ring ring-inset ring-warning"},{color:"error",highlight:!0,class:"ring ring-inset ring-error"},{color:"neutral",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-inverted"},{color:"neutral",highlight:!0,class:"ring ring-inset ring-inverted"},{leading:!0,size:"xs",class:"ps-7"},{leading:!0,size:"sm",class:"ps-8"},{leading:!0,size:"md",class:"ps-9"},{leading:!0,size:"lg",class:"ps-10"},{leading:!0,size:"xl",class:"ps-11"},{trailing:!0,size:"xs",class:"pe-7"},{trailing:!0,size:"sm",class:"pe-8"},{trailing:!0,size:"md",class:"pe-9"},{trailing:!0,size:"lg",class:"pe-10"},{trailing:!0,size:"xl",class:"pe-11"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}}],defaultVariants:{size:"md",color:"primary",variant:"outline"}},La=Object.assign({inheritAttrs:!1},{__name:"USelectMenu",props:Ee({id:{type:String,required:!1},placeholder:{type:String,required:!1},searchInput:{type:[Boolean,Object],required:!1,default:!0},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},selectedIcon:{type:null,required:!1},content:{type:Object,required:!1},arrow:{type:[Boolean,Object],required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},virtualize:{type:[Boolean,Object],required:!1,default:!1},valueKey:{type:null,required:!1},labelKey:{type:null,required:!1,default:"label"},descriptionKey:{type:null,required:!1,default:"description"},items:{type:null,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1},modelModifiers:{type:Object,required:!1},multiple:{type:Boolean,required:!1},highlight:{type:Boolean,required:!1},createItem:{type:[Boolean,String,Object],required:!1},filterFields:{type:Array,required:!1},ignoreFilter:{type:Boolean,required:!1},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},class:{type:null,required:!1},ui:{type:null,required:!1},open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},highlightOnHover:{type:Boolean,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},{searchTerm:{type:String,default:""},searchTermModifiers:{}}),emits:Ee(["update:open","change","blur","focus","create","highlight","update:modelValue"],["update:searchTerm"]),setup(d,{expose:f,emit:r}){const e=d,l=r,i=ut(),o=dt(d,"searchTerm",{type:String,default:""}),{t:p}=pt(),v=ct(),{contains:L}=Ue({sensitivity:"base"}),h=Ge(ft(e,"modelValue","defaultValue","open","defaultOpen","required","multiple","resetSearchTermOnBlur","resetSearchTermOnSelect","highlightOnHover"),l),T=mt(j(()=>e.portal)),O=j(()=>be(e.content,{side:"bottom",sideOffset:8,collisionPadding:8,position:"popper"})),z=j(()=>e.arrow),g=j(()=>e.virtualize?be(typeof e.virtualize=="boolean"?{}:e.virtualize,{estimateSize:Nt(qe.value,e.size||"md",e.descriptionKey)}):!1),F=j(()=>be(e.searchInput,{placeholder:p("selectMenu.search"),variant:"none"})),{emitFormBlur:te,emitFormFocus:R,emitFormInput:J,emitFormChange:xe,size:de,color:ae,id:pe,name:le,highlight:ce,disabled:fe,ariaAttrs:ie}=gt(e),{orientation:re,size:_e}=vt(e),{isLeading:D,isTrailing:oe,leadingIconName:K,trailingIconName:C}=bt(j(()=>be(e,{trailingIcon:v.ui.icons.chevronDown}))),E=w(()=>_e.value||de.value),[P,G]=Ne(),[se,Q]=Ne({props:{item:{type:[Object,String,Number,Boolean],required:!0},index:{type:Number,required:!1}}}),u=w(()=>Pe({extend:Pe(xa),...v.ui?.selectMenu||{}})({color:ae.value,variant:e.variant,size:E?.value,loading:e.loading,highlight:ce.value,leading:D.value||!!e.avatar||!!i.leading,trailing:oe.value||!!i.trailing,fieldGroup:re.value,virtualize:!!e.virtualize}));function He(s){if(e.multiple&&Array.isArray(s)){const x=s.map(a=>De(qe.value,a,{labelKey:e.labelKey,valueKey:e.valueKey})).filter(a=>a!=null&&a!=="");return x.length>0?x.join(", "):void 0}return De(qe.value,s,{labelKey:e.labelKey,valueKey:e.valueKey})}const Ce=w(()=>e.items?.length?yt(e.items)?e.items:[e.items]:[]),qe=w(()=>Ce.value.flatMap(s=>s)),Fe=w(()=>{if(e.ignoreFilter||!o.value)return Ce.value;const s=Array.isArray(e.filterFields)?e.filterFields:[e.labelKey];return Ce.value.map(x=>x.filter(a=>a==null?!1:typeof a!="object"?L(String(a),o.value):a.type&&["label","separator"].includes(a.type)?!0:s.some(V=>{const q=U(a,V);return q!=null&&L(String(q),o.value)}))).filter(x=>x.filter(a=>!I(a)||!a.type||!["label","separator"].includes(a.type)).length>0)}),Ie=w(()=>Fe.value.flatMap(s=>s)),me=w(()=>{if(!e.createItem||!o.value)return!1;const s=e.valueKey?{[e.valueKey]:o.value}:o.value;return typeof e.createItem=="object"&&e.createItem.when==="always"||e.createItem==="always"?!Ie.value.find(x=>ht(x,s,e.valueKey)):!Ie.value.length}),ge=w(()=>typeof e.createItem=="object"?e.createItem.position:"bottom"),Se=xt("triggerRef");function Ye(){e.autofocus&&Se.value?.$el?.focus({focusVisible:!0})}Z(()=>{setTimeout(()=>{Ye()},e.autofocusDelay)});function Xe(s){if(Ct(e.modelValue)===s)return;e.modelModifiers?.trim&&(s=s?.trim()??null),e.modelModifiers?.number&&(s=qt(s)),e.modelModifiers?.nullable&&(s??=null),e.modelModifiers?.optional&&(s??=void 0);const x=new Event("change",{target:{value:s}});l("change",x),xe(),J(),e.resetSearchTermOnSelect&&(o.value="")}function Ze(s){let x;if(s){const a=new FocusEvent("focus");l("focus",a),R(),clearTimeout(x)}else{const a=new FocusEvent("blur");l("blur",a),te(),e.resetSearchTermOnBlur&&(x=setTimeout(()=>{o.value=""},100))}}function Je(s){s.preventDefault(),s.stopPropagation(),l("create",o.value)}function Qe(s,x){if(I(x)){if(x.disabled){s.preventDefault();return}x.onSelect?.(s)}}function I(s){return typeof s=="object"&&s!==null}return f({triggerRef:j(()=>Se.value?.$el)}),(s,x)=>(n(),A(W,null,[_(t(P),null,{default:c(()=>[_(t(Me),{"data-slot":"item",class:y(u.value.item({class:e.ui?.item})),value:o.value,onSelect:Je},{default:c(()=>[ne("span",{"data-slot":"itemLabel",class:y(u.value.itemLabel({class:e.ui?.itemLabel}))},[b(s.$slots,"create-item-label",{item:o.value},()=>[H(M(t(p)("selectMenu.create",{label:o.value})),1)])],2)]),_:3},8,["class","value"])]),_:3}),_(t(se),null,{default:c(({item:a,index:V})=>[I(a)&&a.type==="label"?(n(),m(t(pa),{key:0,"data-slot":"label",class:y(u.value.label({class:[e.ui?.label,a.ui?.label,a.class]}))},{default:c(()=>[H(M(t(U)(a,e.labelKey)),1)]),_:2},1032,["class"])):I(a)&&a.type==="separator"?(n(),m(t(ga),{key:1,"data-slot":"separator",class:y(u.value.separator({class:[e.ui?.separator,a.ui?.separator,a.class]}))},null,8,["class"])):(n(),m(t(Me),{key:2,"data-slot":"item",class:y(u.value.item({class:[e.ui?.item,I(a)&&a.ui?.item,I(a)&&a.class]})),disabled:I(a)&&a.disabled,value:e.valueKey&&I(a)?t(U)(a,e.valueKey):a,onSelect:q=>Qe(q,a)},{default:c(()=>[b(s.$slots,"item",{item:a,index:V,ui:u.value},()=>[b(s.$slots,"item-leading",{item:a,index:V,ui:u.value},()=>[I(a)&&a.icon?(n(),m(ye,{key:0,name:a.icon,"data-slot":"itemLeadingIcon",class:y(u.value.itemLeadingIcon({class:[e.ui?.itemLeadingIcon,a.ui?.itemLeadingIcon]}))},null,8,["name","class"])):I(a)&&a.avatar?(n(),m($e,S({key:1,size:a.ui?.itemLeadingAvatarSize||e.ui?.itemLeadingAvatarSize||u.value.itemLeadingAvatarSize()},a.avatar,{"data-slot":"itemLeadingAvatar",class:u.value.itemLeadingAvatar({class:[e.ui?.itemLeadingAvatar,a.ui?.itemLeadingAvatar]})}),null,16,["size","class"])):I(a)&&a.chip?(n(),m(_t,S({key:2,size:e.ui?.itemLeadingChipSize||u.value.itemLeadingChipSize(),inset:"",standalone:""},a.chip,{"data-slot":"itemLeadingChip",class:u.value.itemLeadingChip({class:[e.ui?.itemLeadingChip,a.ui?.itemLeadingChip]})}),null,16,["size","class"])):B("",!0)]),ne("span",{"data-slot":"itemWrapper",class:y(u.value.itemWrapper({class:[e.ui?.itemWrapper,I(a)&&a.ui?.itemWrapper]}))},[ne("span",{"data-slot":"itemLabel",class:y(u.value.itemLabel({class:[e.ui?.itemLabel,I(a)&&a.ui?.itemLabel]}))},[b(s.$slots,"item-label",{item:a,index:V},()=>[H(M(I(a)?t(U)(a,e.labelKey):a),1)])],2),I(a)&&(t(U)(a,e.descriptionKey)||i["item-description"])?(n(),A("span",{key:0,"data-slot":"itemDescription",class:y(u.value.itemDescription({class:[e.ui?.itemDescription,I(a)&&a.ui?.itemDescription]}))},[b(s.$slots,"item-description",{item:a,index:V},()=>[H(M(t(U)(a,e.descriptionKey)),1)])],2)):B("",!0)],2),ne("span",{"data-slot":"itemTrailing",class:y(u.value.itemTrailing({class:[e.ui?.itemTrailing,I(a)&&a.ui?.itemTrailing]}))},[b(s.$slots,"item-trailing",{item:a,index:V,ui:u.value}),_(t(ua),{"as-child":""},{default:c(()=>[_(ye,{name:d.selectedIcon||t(v).ui.icons.check,"data-slot":"itemTrailingIcon",class:y(u.value.itemTrailingIcon({class:[e.ui?.itemTrailingIcon,I(a)&&a.ui?.itemTrailingIcon]}))},null,8,["name","class"])]),_:2},1024)],2)])]),_:2},1032,["class","disabled","value","onSelect"]))]),_:3}),_(t(Ut),S({id:t(pe)},{...t(h),...s.$attrs,...t(ie)},{"ignore-filter":"","as-child":"",name:t(le),disabled:t(fe),"onUpdate:modelValue":Xe,"onUpdate:open":Ze}),{default:c(({modelValue:a,open:V})=>[_(t(Kt),{"as-child":""},{default:c(()=>[_(t(ba),{ref_key:"triggerRef",ref:Se,"data-slot":"base",class:y(u.value.base({class:[e.ui?.base,e.class]})),tabindex:"0"},{default:c(()=>[t(D)||d.avatar||i.leading?(n(),A("span",{key:0,"data-slot":"leading",class:y(u.value.leading({class:e.ui?.leading}))},[b(s.$slots,"leading",{modelValue:a,open:V,ui:u.value},()=>[t(D)&&t(K)?(n(),m(ye,{key:0,name:t(K),"data-slot":"leadingIcon",class:y(u.value.leadingIcon({class:e.ui?.leadingIcon}))},null,8,["name","class"])):d.avatar?(n(),m($e,S({key:1,size:e.ui?.itemLeadingAvatarSize||u.value.itemLeadingAvatarSize()},d.avatar,{"data-slot":"itemLeadingAvatar",class:u.value.itemLeadingAvatar({class:e.ui?.itemLeadingAvatar})}),null,16,["size","class"])):B("",!0)])],2)):B("",!0),b(s.$slots,"default",{modelValue:a,open:V,ui:u.value},()=>[(n(!0),A(W,null,ze([He(a)],q=>(n(),A(W,{key:q},[q!=null?(n(),A("span",{key:0,"data-slot":"value",class:y(u.value.value({class:e.ui?.value}))},M(q),3)):(n(),A("span",{key:1,"data-slot":"placeholder",class:y(u.value.placeholder({class:e.ui?.placeholder}))},M(d.placeholder??" "),3))],64))),128))]),t(oe)||i.trailing?(n(),A("span",{key:1,"data-slot":"trailing",class:y(u.value.trailing({class:e.ui?.trailing}))},[b(s.$slots,"trailing",{modelValue:a,open:V,ui:u.value},()=>[t(C)?(n(),m(ye,{key:0,name:t(C),"data-slot":"trailingIcon",class:y(u.value.trailingIcon({class:e.ui?.trailingIcon}))},null,8,["name","class"])):B("",!0)])],2)):B("",!0)]),_:2},1032,["class"])]),_:2},1024),_(t(fa),Y(ue(t(T))),{default:c(()=>[_(t(ea),S({"data-slot":"content",class:u.value.content({class:e.ui?.content})},O.value),{default:c(()=>[_(t(zt),{trapped:"","data-slot":"focusScope",class:y(u.value.focusScope({class:e.ui?.focusScope}))},{default:c(()=>[b(s.$slots,"content-top"),d.searchInput?(n(),m(t(oa),{key:0,modelValue:o.value,"onUpdate:modelValue":x[1]||(x[1]=q=>o.value=q),"display-value":()=>o.value,"as-child":""},{default:c(()=>[_(Mt,S({autofocus:"",autocomplete:"off",size:d.size},F.value,{"data-slot":"input",class:u.value.input({class:e.ui?.input}),onChange:x[0]||(x[0]=je(()=>{},["stop"]))}),null,16,["size","class"])]),_:1},8,["modelValue","display-value"])):B("",!0),_(t(aa),{"data-slot":"empty",class:y(u.value.empty({class:e.ui?.empty}))},{default:c(()=>[b(s.$slots,"empty",{searchTerm:o.value},()=>[H(M(o.value?t(p)("selectMenu.noMatch",{searchTerm:o.value}):t(p)("selectMenu.noData")),1)])]),_:3},8,["class"]),ne("div",{role:"presentation","data-slot":"viewport",class:y(u.value.viewport({class:e.ui?.viewport}))},[d.virtualize?(n(),A(W,{key:0},[me.value&&ge.value==="top"?(n(),m(t(G),{key:0})):B("",!0),_(t(ha),S({options:Ie.value,"text-content":q=>I(q)?t(U)(q,e.labelKey):String(q)},g.value),{default:c(({option:q,virtualItem:ve})=>[_(t(Q),{item:q,index:ve.index},null,8,["item","index"])]),_:1},16,["options","text-content"]),me.value&&ge.value==="bottom"?(n(),m(t(G),{key:1})):B("",!0)],64)):(n(),A(W,{key:1},[me.value&&ge.value==="top"?(n(),m(t(we),{key:0,"data-slot":"group",class:y(u.value.group({class:e.ui?.group}))},{default:c(()=>[_(t(G))]),_:1},8,["class"])):B("",!0),(n(!0),A(W,null,ze(Fe.value,(q,ve)=>(n(),m(t(we),{key:`group-${ve}`,"data-slot":"group",class:y(u.value.group({class:e.ui?.group}))},{default:c(()=>[(n(!0),A(W,null,ze(q,(et,Ve)=>(n(),m(t(Q),{key:`group-${ve}-${Ve}`,item:et,index:Ve},null,8,["item","index"]))),128))]),_:2},1032,["class"]))),128)),me.value&&ge.value==="bottom"?(n(),m(t(we),{key:1,"data-slot":"group",class:y(u.value.group({class:e.ui?.group}))},{default:c(()=>[_(t(G))]),_:1},8,["class"])):B("",!0)],64))],2),b(s.$slots,"content-bottom")]),_:3},8,["class"]),d.arrow?(n(),m(t(Jt),S({key:0},z.value,{"data-slot":"arrow",class:u.value.arrow({class:e.ui?.arrow})}),null,16,["class"])):B("",!0)]),_:3},16,["class"])]),_:3},16)]),_:3},16,["id","name","disabled"])],64))}});export{La as _};
@@ -1 +1 @@
1
- import{T as w,d as O,aQ as P,aR as q,aS as x,e as v,a4 as B,c as U,o as D,w as S,Z as G,a as d,P as M,r as N}from"./BOCn_SGf.js";import{u as L}from"./BWqJInD3.js";const V="rovingFocusGroup.onEntryFocus",k={bubbles:!1,cancelable:!0},K={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function Y(e,o){return o!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function Z(e,o,a){const t=Y(e.key,a);if(!(o==="vertical"&&["ArrowLeft","ArrowRight"].includes(t))&&!(o==="horizontal"&&["ArrowUp","ArrowDown"].includes(t)))return K[t]}function $(e,o=!1){const a=w();for(const t of e)if(t===a||(t.focus({preventScroll:o}),w()!==a))return}function J(e,o){return e.map((a,t)=>e[(o+t)%e.length])}const[W,j]=P("RovingFocusGroup");var z=O({__name:"RovingFocusGroup",props:{orientation:{type:String,required:!1,default:void 0},dir:{type:String,required:!1},loop:{type:Boolean,required:!1,default:!1},currentTabStopId:{type:[String,null],required:!1},defaultCurrentTabStopId:{type:String,required:!1},preventScrollOnEntryFocus:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["entryFocus","update:currentTabStopId"],setup(e,{expose:o,emit:a}){const t=e,g=a,{loop:I,orientation:m,dir:T}=q(t),F=L(T),f=x(t,"currentTabStopId",g,{defaultValue:t.defaultCurrentTabStopId,passive:t.currentTabStopId===void 0}),i=v(!1),l=v(!1),p=v(0),{getItems:b,CollectionSlot:A}=B({isProvider:!0});function h(r){const s=!l.value;if(r.currentTarget&&r.target===r.currentTarget&&s&&!i.value){const u=new CustomEvent(V,k);if(r.currentTarget.dispatchEvent(u),g("entryFocus",u),!u.defaultPrevented){const c=b().map(n=>n.ref).filter(n=>n.dataset.disabled!==""),C=c.find(n=>n.getAttribute("data-active")===""),_=c.find(n=>n.getAttribute("data-highlighted")===""),y=c.find(n=>n.id===f.value),R=[C,_,y,...c].filter(Boolean);$(R,t.preventScrollOnEntryFocus)}}l.value=!1}function E(){setTimeout(()=>{l.value=!1},1)}return o({getItems:b}),j({loop:I,dir:F,orientation:m,currentTabStopId:f,onItemFocus:r=>{f.value=r},onItemShiftTab:()=>{i.value=!0},onFocusableItemAdd:()=>{p.value++},onFocusableItemRemove:()=>{p.value--}}),(r,s)=>(D(),U(d(A),null,{default:S(()=>[G(d(M),{tabindex:i.value||p.value===0?-1:0,"data-orientation":d(m),as:r.as,"as-child":r.asChild,dir:d(F),style:{outline:"none"},onMousedown:s[0]||(s[0]=u=>l.value=!0),onMouseup:E,onFocus:h,onBlur:s[1]||(s[1]=u=>i.value=!1)},{default:S(()=>[N(r.$slots,"default")]),_:3},8,["tabindex","data-orientation","as","as-child","dir"])]),_:3}))}}),X=z;export{K as M,X as R,$ as f,Z as g,W as i,J as w};
1
+ import{T as w,d as O,aQ as P,aR as q,aS as x,e as v,a4 as B,c as U,o as D,w as S,Z as G,a as d,P as M,r as N}from"./CBqC92gC.js";import{u as L}from"./B9OPrqTh.js";const V="rovingFocusGroup.onEntryFocus",k={bubbles:!1,cancelable:!0},K={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function Y(e,o){return o!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function Z(e,o,a){const t=Y(e.key,a);if(!(o==="vertical"&&["ArrowLeft","ArrowRight"].includes(t))&&!(o==="horizontal"&&["ArrowUp","ArrowDown"].includes(t)))return K[t]}function $(e,o=!1){const a=w();for(const t of e)if(t===a||(t.focus({preventScroll:o}),w()!==a))return}function J(e,o){return e.map((a,t)=>e[(o+t)%e.length])}const[W,j]=P("RovingFocusGroup");var z=O({__name:"RovingFocusGroup",props:{orientation:{type:String,required:!1,default:void 0},dir:{type:String,required:!1},loop:{type:Boolean,required:!1,default:!1},currentTabStopId:{type:[String,null],required:!1},defaultCurrentTabStopId:{type:String,required:!1},preventScrollOnEntryFocus:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["entryFocus","update:currentTabStopId"],setup(e,{expose:o,emit:a}){const t=e,g=a,{loop:I,orientation:m,dir:T}=q(t),F=L(T),f=x(t,"currentTabStopId",g,{defaultValue:t.defaultCurrentTabStopId,passive:t.currentTabStopId===void 0}),i=v(!1),l=v(!1),p=v(0),{getItems:b,CollectionSlot:A}=B({isProvider:!0});function h(r){const s=!l.value;if(r.currentTarget&&r.target===r.currentTarget&&s&&!i.value){const u=new CustomEvent(V,k);if(r.currentTarget.dispatchEvent(u),g("entryFocus",u),!u.defaultPrevented){const c=b().map(n=>n.ref).filter(n=>n.dataset.disabled!==""),C=c.find(n=>n.getAttribute("data-active")===""),_=c.find(n=>n.getAttribute("data-highlighted")===""),y=c.find(n=>n.id===f.value),R=[C,_,y,...c].filter(Boolean);$(R,t.preventScrollOnEntryFocus)}}l.value=!1}function E(){setTimeout(()=>{l.value=!1},1)}return o({getItems:b}),j({loop:I,dir:F,orientation:m,currentTabStopId:f,onItemFocus:r=>{f.value=r},onItemShiftTab:()=>{i.value=!0},onFocusableItemAdd:()=>{p.value++},onFocusableItemRemove:()=>{p.value--}}),(r,s)=>(D(),U(d(A),null,{default:S(()=>[G(d(M),{tabindex:i.value||p.value===0?-1:0,"data-orientation":d(m),as:r.as,"as-child":r.asChild,dir:d(F),style:{outline:"none"},onMousedown:s[0]||(s[0]=u=>l.value=!0),onMouseup:E,onFocus:h,onBlur:s[1]||(s[1]=u=>i.value=!1)},{default:S(()=>[N(r.$slots,"default")]),_:3},8,["tabindex","data-orientation","as","as-child","dir"])]),_:3}))}}),X=z;export{K as M,X as R,$ as f,Z as g,W as i,J as w};
@@ -1 +1 @@
1
- import{u as D}from"./8WMJQbWG.js";import{i as a}from"./BOCn_SGf.js";const O="sb-preferences",v=3600*24*365,k={editorMode:"editor",viewSourceMode:!1,lastDocumentPath:null,sidebarOpen:!0,docsTreeWidth:16,assistantPanelOpen:!1,assistantPanelTab:"chat",assistantLastConversationId:null,taskStatusFilter:"all",taskProjectFilter:null,agentStatsPeriod:"7d",usageStatsPeriod:"7d",usageDisplayMode:"tokens",onboardingDismissed:!1};function T(){const o=D(O,{maxAge:v,default:()=>({})});function e(t){return o.value[t]??k[t]}function s(t,f){o.value={...o.value,[t]:f}}const n=a({get:()=>e("editorMode"),set:t=>s("editorMode",t)}),i=a({get:()=>e("viewSourceMode"),set:t=>s("viewSourceMode",t)}),r=a({get:()=>e("lastDocumentPath"),set:t=>s("lastDocumentPath",t)}),d=a({get:()=>e("sidebarOpen"),set:t=>s("sidebarOpen",t)}),c=a({get:()=>e("docsTreeWidth"),set:t=>s("docsTreeWidth",t)}),l=a({get:()=>e("taskStatusFilter"),set:t=>s("taskStatusFilter",t)}),u=a({get:()=>e("taskProjectFilter"),set:t=>s("taskProjectFilter",t)}),g=a({get:()=>e("agentStatsPeriod"),set:t=>s("agentStatsPeriod",t)}),P=a({get:()=>e("assistantPanelOpen"),set:t=>s("assistantPanelOpen",t)}),p=a({get:()=>e("assistantPanelTab"),set:t=>s("assistantPanelTab",t)}),S=a({get:()=>e("assistantLastConversationId"),set:t=>s("assistantLastConversationId",t)}),m=a({get:()=>e("usageStatsPeriod"),set:t=>s("usageStatsPeriod",t)}),M=a({get:()=>e("usageDisplayMode"),set:t=>s("usageDisplayMode",t)}),b=a({get:()=>e("onboardingDismissed"),set:t=>s("onboardingDismissed",t)});return{get:e,set:s,editorMode:n,viewSourceMode:i,lastDocumentPath:r,sidebarOpen:d,docsTreeWidth:c,assistantPanelOpen:P,assistantPanelTab:p,assistantLastConversationId:S,taskStatusFilter:l,taskProjectFilter:u,agentStatsPeriod:g,usageStatsPeriod:m,usageDisplayMode:M,onboardingDismissed:b}}export{T as u};
1
+ import{u as D}from"./DrQVjmDX.js";import{i as a}from"./CBqC92gC.js";const O="sb-preferences",v=3600*24*365,k={editorMode:"editor",viewSourceMode:!1,lastDocumentPath:null,sidebarOpen:!0,docsTreeWidth:16,assistantPanelOpen:!1,assistantPanelTab:"chat",assistantLastConversationId:null,taskStatusFilter:"all",taskProjectFilter:null,agentStatsPeriod:"7d",usageStatsPeriod:"7d",usageDisplayMode:"tokens",onboardingDismissed:!1};function T(){const o=D(O,{maxAge:v,default:()=>({})});function e(t){return o.value[t]??k[t]}function s(t,f){o.value={...o.value,[t]:f}}const n=a({get:()=>e("editorMode"),set:t=>s("editorMode",t)}),i=a({get:()=>e("viewSourceMode"),set:t=>s("viewSourceMode",t)}),r=a({get:()=>e("lastDocumentPath"),set:t=>s("lastDocumentPath",t)}),d=a({get:()=>e("sidebarOpen"),set:t=>s("sidebarOpen",t)}),c=a({get:()=>e("docsTreeWidth"),set:t=>s("docsTreeWidth",t)}),l=a({get:()=>e("taskStatusFilter"),set:t=>s("taskStatusFilter",t)}),u=a({get:()=>e("taskProjectFilter"),set:t=>s("taskProjectFilter",t)}),g=a({get:()=>e("agentStatsPeriod"),set:t=>s("agentStatsPeriod",t)}),P=a({get:()=>e("assistantPanelOpen"),set:t=>s("assistantPanelOpen",t)}),p=a({get:()=>e("assistantPanelTab"),set:t=>s("assistantPanelTab",t)}),S=a({get:()=>e("assistantLastConversationId"),set:t=>s("assistantLastConversationId",t)}),m=a({get:()=>e("usageStatsPeriod"),set:t=>s("usageStatsPeriod",t)}),M=a({get:()=>e("usageDisplayMode"),set:t=>s("usageDisplayMode",t)}),b=a({get:()=>e("onboardingDismissed"),set:t=>s("onboardingDismissed",t)});return{get:e,set:s,editorMode:n,viewSourceMode:i,lastDocumentPath:r,sidebarOpen:d,docsTreeWidth:c,assistantPanelOpen:P,assistantPanelTab:p,assistantLastConversationId:S,taskStatusFilter:l,taskProjectFilter:u,agentStatsPeriod:g,usageStatsPeriod:m,usageDisplayMode:M,onboardingDismissed:b}}export{T as u};
@@ -1 +1 @@
1
- import{d as M,aj as N,e as p,an as j,C as B,M as I,ac as n,Z as a,w as l,a as s,ak as h,a0 as L,o as z,ab as m,_ as P,af as v}from"./BOCn_SGf.js";import{_ as q}from"./DHRexj9X.js";import{_ as O}from"./DqR9SdeU.js";import{_ as R}from"./C4sG6rdW.js";import{_ as Y}from"./CLNcmNQS.js";import{_ as G}from"./BzrhNhdT.js";import{f as Z}from"./DqmQtg6Y.js";import"./88opOQSr.js";import"./CVVtVzXC.js";import"./hCeWb_38.js";import"./D3cEeQh7.js";import"./BLdMRpJD.js";import"./DTR31rjp.js";import"./V04-MrLN.js";import"./C6Eoiclo.js";import"./DZikIgHK.js";const H={class:"py-6"},J={class:"flex items-center justify-between mb-6"},Q={class:"text-sm bg-elevated px-2 py-0.5 rounded"},W={class:"text-dimmed"},X={class:"text-dimmed text-sm"},ee={class:"flex gap-2 justify-end"},te={class:"py-12 text-center"},oe={class:"text-lg font-semibold"},se={class:"flex justify-end gap-2 pt-4"},ae={class:"mb-4"},le={class:"bg-elevated px-2 py-0.5 rounded"},ne={class:"flex justify-end gap-2 pt-6"},he=M({__name:"manage-secrets",setup(ie){const d=N(),S=p([]),_=p(!1),c=p(!1),f=p(!1),y=p(null),k=p(!1),i=p(null),t=j({key:"",value:"",description:""}),$=[{accessorKey:"key",header:"Key"},{accessorKey:"description",header:"Description"},{accessorKey:"updatedAt",header:"Last Updated"},{accessorKey:"actions",header:""}];async function g(){_.value=!0;try{const{data:r}=await $fetch("/api/secrets");S.value=r}catch{d.add({title:"Failed to load secrets",color:"error"})}_.value=!1}function w(){i.value=null,t.key="",t.value="",t.description="",c.value=!0}function U(r){i.value=r,t.key=r.key,t.value="",t.description=r.description||"",c.value=!0}function A(r){y.value=r,f.value=!0}async function V(){if(!t.key||!i.value&&!t.value){d.add({title:"Missing fields",description:i.value?"Key is required.":"Key and value are required.",color:"error"});return}k.value=!0;try{i.value?(await $fetch(`/api/secrets/${i.value.key}`,{method:"PUT",body:{value:t.value||void 0,description:t.description||void 0}}),d.add({title:"Secret updated",color:"success"})):(await $fetch("/api/secrets",{method:"POST",body:{key:t.key,value:t.value,description:t.description||void 0}}),d.add({title:"Secret created",color:"success"})),c.value=!1,await g()}catch(r){const e=r;d.add({title:i.value?"Failed to update secret":"Failed to create secret",description:e.data?.message||"An error occurred",color:"error"})}k.value=!1}async function D(){if(y.value)try{await $fetch(`/api/secrets/${y.value.key}`,{method:"DELETE"}),d.add({title:"Secret deleted",color:"success"}),f.value=!1,y.value=null,await g()}catch{d.add({title:"Failed to delete secret",color:"error"})}}return B(()=>{g()}),(r,e)=>{const u=L,E=P,K=q,x=O,b=R,F=Y,C=G;return z(),I("div",H,[n("div",J,[e[8]||(e[8]=n("div",null,[n("h3",{class:"text-lg font-semibold"}," Secrets "),n("p",{class:"text-sm text-dimmed"}," Encrypted key-value store for skills and integrations. ")],-1)),a(u,{icon:"i-lucide-plus",onClick:w},{default:l(()=>[...e[7]||(e[7]=[m(" Add Secret ",-1)])]),_:1})]),a(K,{columns:$,data:s(S),loading:s(_)},{"key-cell":l(({row:o})=>[n("code",Q,v(o.original.key),1)]),"description-cell":l(({row:o})=>[n("span",W,v(o.original.description||"—"),1)]),"updatedAt-cell":l(({row:o})=>[n("span",X,v(s(Z)(o.original.updatedAt)),1)]),"actions-cell":l(({row:o})=>[n("div",ee,[a(u,{variant:"ghost",icon:"i-lucide-pencil",size:"xs",onClick:T=>U(o.original)},null,8,["onClick"]),a(u,{variant:"ghost",color:"error",icon:"i-lucide-trash-2",size:"xs",onClick:T=>A(o.original)},null,8,["onClick"])])]),empty:l(()=>[n("div",te,[a(E,{name:"i-lucide-key",class:"size-12 mx-auto mb-4 text-dimmed"}),e[9]||(e[9]=n("p",{class:"text-dimmed"}," No secrets yet. Add one to get started. ",-1))])]),_:1},8,["data","loading"]),a(C,{open:s(c),"onUpdate:open":e[4]||(e[4]=o=>h(c)?c.value=o:null)},{header:l(()=>[n("h3",oe,v(s(i)?"Edit Secret":"Add Secret"),1)]),body:l(()=>[a(F,{state:s(t),class:"space-y-4",onSubmit:V},{default:l(()=>[a(b,{label:"Key",name:"key",hint:s(i)?"":"SCREAMING_SNAKE_CASE"},{default:l(()=>[a(x,{modelValue:s(t).key,"onUpdate:modelValue":e[0]||(e[0]=o=>s(t).key=o),disabled:!!s(i),placeholder:"MY_API_KEY",class:"w-full font-mono"},null,8,["modelValue","disabled"])]),_:1},8,["hint"]),a(b,{label:"Value",name:"value",hint:s(i)?"Leave empty to keep current value":""},{default:l(()=>[a(x,{modelValue:s(t).value,"onUpdate:modelValue":e[1]||(e[1]=o=>s(t).value=o),type:"password",placeholder:s(i)?"••••••••":"Secret value",class:"w-full"},null,8,["modelValue","placeholder"])]),_:1},8,["hint"]),a(b,{label:"Description",name:"description"},{default:l(()=>[a(x,{modelValue:s(t).description,"onUpdate:modelValue":e[2]||(e[2]=o=>s(t).description=o),placeholder:"Optional description",class:"w-full"},null,8,["modelValue"])]),_:1}),n("div",se,[a(u,{variant:"ghost",onClick:e[3]||(e[3]=o=>c.value=!1)},{default:l(()=>[...e[10]||(e[10]=[m(" Cancel ",-1)])]),_:1}),a(u,{type:"submit",loading:s(k)},{default:l(()=>[m(v(s(i)?"Update":"Create"),1)]),_:1},8,["loading"])])]),_:1},8,["state"])]),_:1},8,["open"]),a(C,{open:s(f),"onUpdate:open":e[6]||(e[6]=o=>h(f)?f.value=o:null)},{header:l(()=>[...e[11]||(e[11]=[n("h3",{class:"text-lg font-semibold"}," Delete Secret ",-1)])]),body:l(()=>[n("p",ae,[e[12]||(e[12]=m(" Are you sure you want to delete ",-1)),n("code",le,v(s(y)?.key),1),e[13]||(e[13]=m("? ",-1))]),e[16]||(e[16]=n("p",{class:"text-sm text-dimmed"}," This action cannot be undone. Any skills using this secret will stop working. ",-1)),n("div",ne,[a(u,{variant:"ghost",onClick:e[5]||(e[5]=o=>f.value=!1)},{default:l(()=>[...e[14]||(e[14]=[m(" Cancel ",-1)])]),_:1}),a(u,{color:"error",onClick:D},{default:l(()=>[...e[15]||(e[15]=[m(" Delete ",-1)])]),_:1})])]),_:1},8,["open"])])}}});export{he as default};
1
+ import{d as M,aj as N,e as p,an as j,C as B,M as I,ac as n,Z as a,w as l,a as s,ak as h,a0 as L,o as z,ab as m,_ as P,af as v}from"./CBqC92gC.js";import{_ as q}from"./ZjXNlFkb.js";import{_ as O}from"./4Vi9hKJC.js";import{_ as R}from"./BnfOmQBX.js";import{_ as Y}from"./CUDpi0L3.js";import{_ as G}from"./CE491BHV.js";import{f as Z}from"./DqmQtg6Y.js";import"./88opOQSr.js";import"./CM5aLXsq.js";import"./DUf0f355.js";import"./CdIGoC9r.js";import"./DvZW6QuM.js";import"./BoqEl-F1.js";import"./iIxC-lNx.js";import"./Cyo4VJ6S.js";import"./CN_jZBEh.js";const H={class:"py-6"},J={class:"flex items-center justify-between mb-6"},Q={class:"text-sm bg-elevated px-2 py-0.5 rounded"},W={class:"text-dimmed"},X={class:"text-dimmed text-sm"},ee={class:"flex gap-2 justify-end"},te={class:"py-12 text-center"},oe={class:"text-lg font-semibold"},se={class:"flex justify-end gap-2 pt-4"},ae={class:"mb-4"},le={class:"bg-elevated px-2 py-0.5 rounded"},ne={class:"flex justify-end gap-2 pt-6"},he=M({__name:"manage-secrets",setup(ie){const d=N(),S=p([]),_=p(!1),c=p(!1),f=p(!1),y=p(null),k=p(!1),i=p(null),t=j({key:"",value:"",description:""}),$=[{accessorKey:"key",header:"Key"},{accessorKey:"description",header:"Description"},{accessorKey:"updatedAt",header:"Last Updated"},{accessorKey:"actions",header:""}];async function g(){_.value=!0;try{const{data:r}=await $fetch("/api/secrets");S.value=r}catch{d.add({title:"Failed to load secrets",color:"error"})}_.value=!1}function w(){i.value=null,t.key="",t.value="",t.description="",c.value=!0}function U(r){i.value=r,t.key=r.key,t.value="",t.description=r.description||"",c.value=!0}function A(r){y.value=r,f.value=!0}async function V(){if(!t.key||!i.value&&!t.value){d.add({title:"Missing fields",description:i.value?"Key is required.":"Key and value are required.",color:"error"});return}k.value=!0;try{i.value?(await $fetch(`/api/secrets/${i.value.key}`,{method:"PUT",body:{value:t.value||void 0,description:t.description||void 0}}),d.add({title:"Secret updated",color:"success"})):(await $fetch("/api/secrets",{method:"POST",body:{key:t.key,value:t.value,description:t.description||void 0}}),d.add({title:"Secret created",color:"success"})),c.value=!1,await g()}catch(r){const e=r;d.add({title:i.value?"Failed to update secret":"Failed to create secret",description:e.data?.message||"An error occurred",color:"error"})}k.value=!1}async function D(){if(y.value)try{await $fetch(`/api/secrets/${y.value.key}`,{method:"DELETE"}),d.add({title:"Secret deleted",color:"success"}),f.value=!1,y.value=null,await g()}catch{d.add({title:"Failed to delete secret",color:"error"})}}return B(()=>{g()}),(r,e)=>{const u=L,E=P,K=q,x=O,b=R,F=Y,C=G;return z(),I("div",H,[n("div",J,[e[8]||(e[8]=n("div",null,[n("h3",{class:"text-lg font-semibold"}," Secrets "),n("p",{class:"text-sm text-dimmed"}," Encrypted key-value store for skills and integrations. ")],-1)),a(u,{icon:"i-lucide-plus",onClick:w},{default:l(()=>[...e[7]||(e[7]=[m(" Add Secret ",-1)])]),_:1})]),a(K,{columns:$,data:s(S),loading:s(_)},{"key-cell":l(({row:o})=>[n("code",Q,v(o.original.key),1)]),"description-cell":l(({row:o})=>[n("span",W,v(o.original.description||"—"),1)]),"updatedAt-cell":l(({row:o})=>[n("span",X,v(s(Z)(o.original.updatedAt)),1)]),"actions-cell":l(({row:o})=>[n("div",ee,[a(u,{variant:"ghost",icon:"i-lucide-pencil",size:"xs",onClick:T=>U(o.original)},null,8,["onClick"]),a(u,{variant:"ghost",color:"error",icon:"i-lucide-trash-2",size:"xs",onClick:T=>A(o.original)},null,8,["onClick"])])]),empty:l(()=>[n("div",te,[a(E,{name:"i-lucide-key",class:"size-12 mx-auto mb-4 text-dimmed"}),e[9]||(e[9]=n("p",{class:"text-dimmed"}," No secrets yet. Add one to get started. ",-1))])]),_:1},8,["data","loading"]),a(C,{open:s(c),"onUpdate:open":e[4]||(e[4]=o=>h(c)?c.value=o:null)},{header:l(()=>[n("h3",oe,v(s(i)?"Edit Secret":"Add Secret"),1)]),body:l(()=>[a(F,{state:s(t),class:"space-y-4",onSubmit:V},{default:l(()=>[a(b,{label:"Key",name:"key",hint:s(i)?"":"SCREAMING_SNAKE_CASE"},{default:l(()=>[a(x,{modelValue:s(t).key,"onUpdate:modelValue":e[0]||(e[0]=o=>s(t).key=o),disabled:!!s(i),placeholder:"MY_API_KEY",class:"w-full font-mono"},null,8,["modelValue","disabled"])]),_:1},8,["hint"]),a(b,{label:"Value",name:"value",hint:s(i)?"Leave empty to keep current value":""},{default:l(()=>[a(x,{modelValue:s(t).value,"onUpdate:modelValue":e[1]||(e[1]=o=>s(t).value=o),type:"password",placeholder:s(i)?"••••••••":"Secret value",class:"w-full"},null,8,["modelValue","placeholder"])]),_:1},8,["hint"]),a(b,{label:"Description",name:"description"},{default:l(()=>[a(x,{modelValue:s(t).description,"onUpdate:modelValue":e[2]||(e[2]=o=>s(t).description=o),placeholder:"Optional description",class:"w-full"},null,8,["modelValue"])]),_:1}),n("div",se,[a(u,{variant:"ghost",onClick:e[3]||(e[3]=o=>c.value=!1)},{default:l(()=>[...e[10]||(e[10]=[m(" Cancel ",-1)])]),_:1}),a(u,{type:"submit",loading:s(k)},{default:l(()=>[m(v(s(i)?"Update":"Create"),1)]),_:1},8,["loading"])])]),_:1},8,["state"])]),_:1},8,["open"]),a(C,{open:s(f),"onUpdate:open":e[6]||(e[6]=o=>h(f)?f.value=o:null)},{header:l(()=>[...e[11]||(e[11]=[n("h3",{class:"text-lg font-semibold"}," Delete Secret ",-1)])]),body:l(()=>[n("p",ae,[e[12]||(e[12]=m(" Are you sure you want to delete ",-1)),n("code",le,v(s(y)?.key),1),e[13]||(e[13]=m("? ",-1))]),e[16]||(e[16]=n("p",{class:"text-sm text-dimmed"}," This action cannot be undone. Any skills using this secret will stop working. ",-1)),n("div",ne,[a(u,{variant:"ghost",onClick:e[5]||(e[5]=o=>f.value=!1)},{default:l(()=>[...e[14]||(e[14]=[m(" Cancel ",-1)])]),_:1}),a(u,{color:"error",onClick:D},{default:l(()=>[...e[15]||(e[15]=[m(" Delete ",-1)])]),_:1})])]),_:1},8,["open"])])}}});export{he as default};