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 se}from"./BhhMUror.js";import{d as Q,i as U,M as V,o as k,ac as f,Z as l,$ as Y,a as o,_ as ae,ao as Ce,c as z,aa as E,af as j,w as m,ab as F,a$ as de,al as le,am as ne,a0 as J,ak as A,e as b,h as q,an as De,ah as Ue,aj as Ve,C as Fe,n as ue}from"./BOCn_SGf.js";import{_ as Ie}from"./CZNOaqeX.js";import{_ as Pe,a as Se}from"./CHnVFnBW.js";import{_ as ie}from"./D_k1YwXm.js";import{_ as me}from"./DqR9SdeU.js";import{_ as Ee}from"./jC4pIK1p.js";import{_ as pe}from"./BTGeP1bA.js";import{_ as Ae}from"./D2edadpd.js";import{h as ze,i as te}from"./DqmQtg6Y.js";import{_ as Be}from"./C4sG6rdW.js";import{_ as Le,a as Me}from"./DP8t9VWs.js";import{_ as Oe}from"./D49P2RhG.js";import{_ as Ne}from"./t8B72leH.js";import{_ as qe}from"./C_A_NkeC.js";import{_ as He}from"./BzrhNhdT.js";import{_ as Re}from"./BgavRUl_.js";import{u as Qe}from"./C-78dDNd.js";import"./BZm9w7en.js";import"./hCeWb_38.js";import"./8WMJQbWG.js";import"./BWqJInD3.js";import"./B9o6sFST.js";import"./jTT1R-Vz.js";import"./C6Eoiclo.js";import"./CxMuZEwX.js";import"./hrPTRWjM.js";import"./DZikIgHK.js";import"./DTR31rjp.js";import"./D41A2mE2.js";import"./C6Y-ieo6.js";import"./Br81Sr2R.js";import"./C1oaoi1p.js";import"./D3cEeQh7.js";import"./DxE8r3r4.js";import"./DL4EpgqQ.js";import"./Vcq4gwWv.js";import"./CuvkTsqs.js";import"./BLdMRpJD.js";import"./V04-MrLN.js";import"./88opOQSr.js";import"./iik6CYzq.js";import"./CCeM5lW2.js";import"./BXxZokD_.js";const Ze={class:"flex items-center gap-2"},Ge={class:"flex items-center flex-wrap gap-2 mt-2"},Je={key:4,class:"text-xs text-dimmed"},Ke=Q({__name:"TaskCard",props:{task:{}},emits:["toggle","edit","delete","view"],setup(e,{emit:x}){const i=e,w=x,n={1:{label:"Low",color:"neutral",icon:"i-lucide-arrow-down"},2:{label:"Medium",color:"warning",icon:"i-lucide-minus"},3:{label:"High",color:"error",icon:"i-lucide-arrow-up"}},C={todo:{label:"Todo",color:"neutral",icon:"i-lucide-circle"},in_progress:{label:"In Progress",color:"info",icon:"i-lucide-clock"},done:{label:"Done",color:"success",icon:"i-lucide-check-circle"},blocked:{label:"Blocked",color:"error",icon:"i-lucide-alert-circle"}},c=U(()=>n[i.task.priority]||n[2]),_=U(()=>C[i.task.status]),v=U(()=>i.task.status==="done"),d=U(()=>!!i.task.description?.trim()),s=U(()=>!i.task.dueDate||v.value?!1:new Date(i.task.dueDate)<new Date),g=U(()=>[[{label:"Edit",icon:"i-lucide-pencil",onSelect:()=>w("edit",i.task)},{label:"Delete",icon:"i-lucide-trash-2",color:"error",onSelect:()=>w("delete",i.task.id)}]]);return(D,I)=>{const P=ae,a=se,t=J,r=Ae;return k(),V("div",{class:Y(["group flex items-start gap-3 p-3 rounded-lg border border-default hover:bg-elevated transition-colors",{"opacity-60":o(v)}])},[f("button",{class:"mt-0.5 shrink-0",onClick:I[0]||(I[0]=Ce(h=>w("toggle",e.task.id),["stop"]))},[l(P,{name:o(v)?"i-lucide-check-circle-2":"i-lucide-circle",class:Y(["size-5",o(v)?"text-success":"text-dimmed hover:text-default"])},null,8,["name","class"])]),f("button",{class:"flex-1 min-w-0 text-left",onClick:I[1]||(I[1]=h=>w("view",e.task))},[f("div",Ze,[f("span",{class:Y(["font-medium",{"line-through text-dimmed":o(v)}])},j(e.task.title),3),o(d)?(k(),z(P,{key:0,name:"i-lucide-file-text",class:"size-3.5 text-dimmed shrink-0"})):E("",!0)]),f("div",Ge,[e.task.project?(k(),z(a,{key:0,variant:"subtle",color:"neutral",size:"xs"},{default:m(()=>[f("span",{class:"size-2 rounded-full mr-1",style:de({backgroundColor:e.task.project.color})},null,4),F(" "+j(e.task.project.name),1)]),_:1})):E("",!0),e.task.priority!==2?(k(),z(a,{key:1,color:o(c).color,variant:"subtle",size:"xs"},{default:m(()=>[l(P,{name:o(c).icon,class:"size-3 mr-1"},null,8,["name"]),F(" "+j(o(c).label),1)]),_:1},8,["color"])):E("",!0),e.task.status==="in_progress"||e.task.status==="blocked"?(k(),z(a,{key:2,color:o(_).color,variant:"subtle",size:"xs"},{default:m(()=>[l(P,{name:o(_).icon,class:"size-3 mr-1"},null,8,["name"]),F(" "+j(o(_).label),1)]),_:1},8,["color"])):E("",!0),e.task.dueDate?(k(),V("span",{key:3,class:Y(["text-xs flex items-center gap-1",o(s)?"text-error":"text-dimmed"])},[l(P,{name:"i-lucide-calendar",class:"size-3"}),F(" "+j(o(ze)(e.task.dueDate)),1)],2)):E("",!0),(k(!0),V(le,null,ne(e.task.tags?.slice(0,3),h=>(k(),z(a,{key:h,variant:"subtle",color:"neutral",size:"xs"},{default:m(()=>[F(j(h),1)]),_:2},1024))),128)),e.task.tags&&e.task.tags.length>3?(k(),V("span",Je," +"+j(e.task.tags.length-3),1)):E("",!0)])]),l(r,{items:o(g)},{default:m(()=>[l(t,{icon:"i-lucide-more-vertical",color:"neutral",variant:"ghost",size:"xs",class:"opacity-0 group-hover:opacity-100 transition-opacity"})]),_:1},8,["items"])],2)}}}),We=Object.assign(Ke,{__name:"TasksTaskCard"}),Xe={key:0,class:"flex items-center justify-center py-12"},Ye={class:"text-center py-8 text-dimmed"},et={key:2,class:"space-y-2"},tt=Q({__name:"TaskList",props:{tasks:{},loading:{type:Boolean}},emits:["toggle","edit","delete","create","view"],setup(e,{emit:x}){const i=x;return(w,n)=>{const C=ae,c=J,_=pe,v=We;return k(),V("div",null,[e.loading?(k(),V("div",Xe,[l(C,{name:"i-lucide-loader-2",class:"size-8 animate-spin text-dimmed"})])):e.tasks.length===0?(k(),z(_,{key:1},{default:m(()=>[f("div",Ye,[l(C,{name:"i-lucide-check-square",class:"size-12 mx-auto mb-2 opacity-50"}),n[5]||(n[5]=f("p",{class:"font-medium"}," No tasks yet ",-1)),n[6]||(n[6]=f("p",{class:"text-sm mt-1"}," Create your first task to get started. ",-1)),l(c,{class:"mt-4",icon:"i-lucide-plus",label:"Add Task",onClick:n[0]||(n[0]=d=>i("create"))})])]),_:1})):(k(),V("div",et,[(k(!0),V(le,null,ne(e.tasks,d=>(k(),z(v,{key:d.id,task:d,onToggle:n[1]||(n[1]=s=>i("toggle",s)),onEdit:n[2]||(n[2]=s=>i("edit",s)),onDelete:n[3]||(n[3]=s=>i("delete",s)),onView:n[4]||(n[4]=s=>i("view",s))},null,8,["task"]))),128))]))])}}}),ot=Object.assign(tt,{__name:"TasksTaskList"}),oe="__none__",st=Q({__name:"ProjectSelect",props:{modelValue:{},projects:{}},emits:["update:modelValue"],setup(e,{emit:x}){const i=e,w=x,n=U({get:()=>i.modelValue||oe,set:c=>w("update:modelValue",c===oe?null:c)}),C=U(()=>[{value:oe,label:"No Project"},...i.projects.filter(c=>!c.deletedAt).map(c=>({value:c.id,label:c.name}))]);return(c,_)=>{const v=ie;return k(),z(v,{modelValue:o(n),"onUpdate:modelValue":_[0]||(_[0]=d=>A(n)?n.value=d:null),items:o(C),"value-key":"value",class:"w-full"},null,8,["modelValue","items"])}}}),at=Object.assign(st,{__name:"TasksProjectSelect"}),lt={class:"task-form-body"},nt={class:"task-form-description"},it={class:"task-form-fields"},rt={class:"grid grid-cols-2 gap-4"},ct={class:"flex justify-end gap-2 w-full"},ut=Q({__name:"TaskForm",props:{open:{type:Boolean},task:{},projects:{}},emits:["update:open","submit"],setup(e,{emit:x}){const i=e,w=x,n=U(()=>!!i.task?.id),C=U(()=>n.value?"Edit Task":"Create Task"),c=b(""),_=b(""),v=b("todo"),d=b(2),s=b(null),g=b(""),D=b([]),I=[{value:"todo",label:"Todo"},{value:"in_progress",label:"In Progress"},{value:"done",label:"Done"},{value:"blocked",label:"Blocked"}],P=[{value:1,label:"Low"},{value:2,label:"Medium"},{value:3,label:"High"}],a=[[{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:"link",icon:"i-lucide-link"}]],t=U(()=>_.value||void 0);q(()=>i.task,T=>{T?(c.value=T.title,_.value=T.description||"",v.value=T.status,d.value=T.priority,s.value=T.projectId||null,g.value=T.dueDate&&new Date(T.dueDate).toISOString().split("T")[0]||"",D.value=T.tags||[]):r()},{immediate:!0}),q(()=>i.open,T=>{T||r()});function r(){c.value="",_.value="",v.value="todo",d.value=2,s.value=null,g.value="",D.value=[]}function h(){w("update:open",!1)}function B(){if(!c.value.trim())return;const T={title:c.value.trim(),description:_.value.trim()||void 0,status:v.value,priority:d.value,projectId:s.value,dueDate:g.value||void 0,tags:D.value};w("submit",T),h()}return(T,y)=>{const K=me,O=Be,Z=Le,W=Me,M=ie,N=at,H=Oe,R=J,X=Ne;return k(),z(X,{open:e.open,title:o(C),"onUpdate:open":y[7]||(y[7]=$=>w("update:open",$))},{body:m(()=>[f("div",lt,[l(O,{label:"Title",required:""},{default:m(()=>[l(K,{modelValue:o(c),"onUpdate:modelValue":y[0]||(y[0]=$=>A(c)?c.value=$:null),placeholder:"Task title...",autofocus:"",class:"w-full"},null,8,["modelValue"])]),_:1}),f("div",nt,[y[8]||(y[8]=f("label",{class:"block text-sm font-medium text-default mb-1.5"},"Description",-1)),l(W,{"model-value":o(t),"content-type":"markdown",placeholder:"Add a description...",class:"task-editor","onUpdate:modelValue":y[1]||(y[1]=$=>_.value=$)},{default:m(({editor:$})=>[l(Z,{editor:$,items:a,class:"border-b border-default"},null,8,["editor"])]),_:1},8,["model-value"])]),f("div",it,[f("div",rt,[l(O,{label:"Status"},{default:m(()=>[l(M,{modelValue:o(v),"onUpdate:modelValue":y[2]||(y[2]=$=>A(v)?v.value=$:null),items:I,"value-key":"value",class:"w-full"},null,8,["modelValue"])]),_:1}),l(O,{label:"Priority"},{default:m(()=>[l(M,{modelValue:o(d),"onUpdate:modelValue":y[3]||(y[3]=$=>A(d)?d.value=$:null),items:P,"value-key":"value",class:"w-full"},null,8,["modelValue"])]),_:1})]),l(O,{label:"Project"},{default:m(()=>[l(N,{modelValue:o(s),"onUpdate:modelValue":y[4]||(y[4]=$=>A(s)?s.value=$:null),projects:e.projects,class:"w-full"},null,8,["modelValue","projects"])]),_:1}),l(O,{label:"Due Date"},{default:m(()=>[l(K,{modelValue:o(g),"onUpdate:modelValue":y[5]||(y[5]=$=>A(g)?g.value=$:null),type:"date",class:"w-full"},null,8,["modelValue"])]),_:1}),l(O,{label:"Tags"},{default:m(()=>[l(H,{modelValue:o(D),"onUpdate:modelValue":y[6]||(y[6]=$=>A(D)?D.value=$:null),placeholder:"Add tags...",class:"w-full"},null,8,["modelValue"])]),_:1})])])]),footer:m(()=>[f("div",ct,[l(R,{color:"neutral",variant:"ghost",onClick:h},{default:m(()=>[...y[9]||(y[9]=[F(" Cancel ",-1)])]),_:1}),l(R,{disabled:!o(c).trim(),onClick:B},{default:m(()=>[F(j(o(n)?"Save Changes":"Create Task"),1)]),_:1},8,["disabled"])])]),_:1},8,["open","title"])}}}),dt=Object.assign(ut,{__name:"TasksTaskForm"}),mt={class:"flex items-start justify-between gap-4"},pt={class:"text-lg font-semibold"},ft={class:"space-y-4"},kt={class:"flex flex-wrap items-center gap-3 text-sm"},vt={key:0,class:"flex items-center gap-1.5"},_t={class:"text-dimmed"},gt={class:"flex items-center gap-1.5"},yt={key:1,class:"flex items-center gap-1.5"},bt={class:"text-dimmed"},ht={key:0,class:"flex flex-wrap gap-1.5"},wt={key:1,class:"pt-2 border-t border-default"},xt={class:"prose prose-sm dark:prose-invert max-w-none"},Tt={class:"pt-2 border-t border-default text-xs text-dimmed space-y-1"},jt={key:0},$t={key:0},Ct={class:"flex justify-between"},Dt={class:"flex gap-2"},Ut=Q({__name:"TaskDetail",props:{task:{}},emits:["edit","close","toggle"],setup(e,{emit:x}){const i=e,w=x,n={1:{label:"Low",color:"neutral"},2:{label:"Medium",color:"warning"},3:{label:"High",color:"error"}},C={todo:{label:"Todo",color:"neutral"},in_progress:{label:"In Progress",color:"info"},done:{label:"Done",color:"success"},blocked:{label:"Blocked",color:"error"}},c=U(()=>n[i.task.priority]||n[2]),_=U(()=>C[i.task.status]),v=U(()=>i.task.status==="done");return(d,s)=>{const g=se,D=ae,I=qe,P=J,a=pe;return k(),z(a,null,{header:m(()=>[f("div",mt,[f("h3",pt,j(e.task.title),1),l(g,{color:o(_).color,variant:"subtle"},{default:m(()=>[F(j(o(_).label),1)]),_:1},8,["color"])])]),footer:m(()=>[f("div",Ct,[l(P,{icon:o(v)?"i-lucide-rotate-ccw":"i-lucide-check",color:o(v)?"neutral":"success",variant:o(v)?"ghost":"soft",onClick:s[0]||(s[0]=t=>w("toggle"))},{default:m(()=>[F(j(o(v)?"Mark Incomplete":"Mark Complete"),1)]),_:1},8,["icon","color","variant"]),f("div",Dt,[l(P,{color:"neutral",variant:"ghost",onClick:s[1]||(s[1]=t=>w("close"))},{default:m(()=>[...s[3]||(s[3]=[F(" Close ",-1)])]),_:1}),l(P,{icon:"i-lucide-pencil",onClick:s[2]||(s[2]=t=>w("edit"))},{default:m(()=>[...s[4]||(s[4]=[F(" Edit ",-1)])]),_:1})])])]),default:m(()=>[f("div",ft,[f("div",kt,[e.task.project?(k(),V("div",vt,[f("span",{class:"size-2.5 rounded-full",style:de({backgroundColor:e.task.project.color})},null,4),f("span",_t,j(e.task.project.name),1)])):E("",!0),f("div",gt,[l(D,{name:"i-lucide-flag",class:"size-4 text-dimmed"}),l(g,{color:o(c).color,variant:"subtle",size:"xs"},{default:m(()=>[F(j(o(c).label),1)]),_:1},8,["color"])]),e.task.dueDate?(k(),V("div",yt,[l(D,{name:"i-lucide-calendar",class:"size-4 text-dimmed"}),f("span",bt,j(o(te)(e.task.dueDate)),1)])):E("",!0)]),e.task.tags&&e.task.tags.length>0?(k(),V("div",ht,[(k(!0),V(le,null,ne(e.task.tags,t=>(k(),z(g,{key:t,variant:"subtle",color:"neutral",size:"sm"},{default:m(()=>[F(j(t),1)]),_:2},1024))),128))])):E("",!0),e.task.description?(k(),V("div",wt,[f("div",xt,[l(I,{value:e.task.description},null,8,["value"])])])):E("",!0),f("div",Tt,[f("p",null,[F(" Created: "+j(o(te)(e.task.createdAt))+" ",1),e.task.creator?(k(),V("span",jt," by "+j(e.task.creator.name),1)):E("",!0)]),e.task.completedAt?(k(),V("p",$t," Completed: "+j(o(te)(e.task.completedAt)),1)):E("",!0)])])]),_:1})}}}),Vt=Object.assign(Ut,{__name:"TasksTaskDetail"});function Ft(){const e=b([]),x=b(!1),i=b(null),w=b([]),n=De({status:void 0,projectId:void 0,search:void 0,includeDeleted:!1});async function C(a){x.value=!0,i.value=null;const t=a||n;try{const r={};t.status&&(Array.isArray(t.status)?t.status.forEach(B=>r.status=B):r.status=t.status),t.projectId&&(r.projectId=t.projectId),t.search&&(r.search=t.search),t.includeDeleted&&(r.includeDeleted="true");const h=await $fetch("/api/tasks",{query:r});return e.value=h.data,h.data}catch(r){throw i.value="Failed to load tasks",console.error("Failed to load tasks:",r),r}finally{x.value=!1}}async function c(){try{const a=await $fetch("/api/tasks/tags");return w.value=a.data,a.data}catch(a){throw console.error("Failed to fetch tags:",a),a}}async function _(a){try{return(await $fetch(`/api/tasks/${a}`)).data}catch(t){throw console.error("Failed to get task:",t),t}}async function v(a){try{const t=await $fetch("/api/tasks",{method:"POST",body:a});return e.value=[t.data,...e.value],t.data}catch(t){throw console.error("Failed to create task:",t),t}}async function d(a,t){try{const r=await $fetch(`/api/tasks/${a}`,{method:"PUT",body:t}),h=e.value.findIndex(B=>B.id===a);return h!==-1&&(e.value[h]=r.data),r.data}catch(r){throw console.error("Failed to update task:",r),r}}async function s(a){try{const t=await $fetch(`/api/tasks/${a}`,{method:"DELETE"});return e.value=e.value.filter(r=>r.id!==a),t.data}catch(t){throw console.error("Failed to delete task:",t),t}}async function g(a){try{const t=await $fetch(`/api/tasks/${a}/restore`,{method:"POST"});return await C(),t.data}catch(t){throw console.error("Failed to restore task:",t),t}}async function D(a){const t=e.value.find(h=>h.id===a);if(!t)return;const r=t.status==="done"?"todo":"done";return d(a,{status:r})}const I=U(()=>{let a=[...e.value];if(n.status){const t=Array.isArray(n.status)?n.status:[n.status];a=a.filter(r=>t.includes(r.status))}if(n.projectId&&(a=a.filter(t=>t.projectId===n.projectId)),n.search){const t=n.search.toLowerCase();a=a.filter(r=>r.title.toLowerCase().includes(t)||r.description?.toLowerCase().includes(t))}return n.includeDeleted||(a=a.filter(t=>!t.deletedAt)),a}),P=U(()=>{const a={todo:0,in_progress:0,done:0,blocked:0,total:0};return e.value.forEach(t=>{t.deletedAt||(a[t.status]++,a.total++)}),a});return{tasks:e,filteredTasks:I,loading:x,error:i,tags:w,filters:n,taskCounts:P,fetchTasks:C,fetchTags:c,getTask:_,createTask:v,updateTask:d,deleteTask:s,restoreTask:g,toggleComplete:D}}function It(){const e=b([]),x=b(!1),i=b(null);async function w(d=!1){x.value=!0,i.value=null;try{const s=await $fetch("/api/projects",{query:{includeDeleted:d.toString()}});return e.value=s.data,s.data}catch(s){throw i.value="Failed to load projects",console.error("Failed to load projects:",s),s}finally{x.value=!1}}async function n(d){try{return(await $fetch(`/api/projects/${d}`)).data}catch(s){throw console.error("Failed to get project:",s),s}}async function C(d){try{const s=await $fetch("/api/projects",{method:"POST",body:d});return e.value=[...e.value,s.data],s.data}catch(s){throw console.error("Failed to create project:",s),s}}async function c(d,s){try{const g=await $fetch(`/api/projects/${d}`,{method:"PUT",body:s}),D=e.value.findIndex(I=>I.id===d);return D!==-1&&(e.value[D]=g.data),g.data}catch(g){throw console.error("Failed to update project:",g),g}}async function _(d){try{const s=await $fetch(`/api/projects/${d}`,{method:"DELETE"});return e.value=e.value.filter(g=>g.id!==d),s.data}catch(s){throw console.error("Failed to delete project:",s),s}}function v(d){if(d)return e.value.find(s=>s.id===d)}return{projects:e,loading:x,error:i,fetchProjects:w,getProject:n,createProject:C,updateProject:c,deleteProject:_,getProjectById:v}}const Pt={class:"contents"},St={class:"flex items-center gap-2 text-sm"},L="__all__",$o=Q({__name:"tasks",setup(e){const x=Ue(),i=Ve(),{filteredTasks:w,tasks:n,loading:C,filters:c,taskCounts:_,fetchTasks:v,createTask:d,updateTask:s,deleteTask:g,toggleComplete:D}=Ft(),{projects:I,fetchProjects:P}=It(),a=b(!1),t=b(null),r=b(!1),h=b(null),B=b(!1),T=b(null),y=b(!1),K=[{value:L,label:"All Status"},{value:"todo",label:"Todo"},{value:"in_progress",label:"In Progress"},{value:"done",label:"Done"},{value:"blocked",label:"Blocked"}],O=U(()=>[{value:L,label:"All Projects"},...I.value.filter(u=>!u.deletedAt).map(u=>({value:u.id,label:u.name}))]),{taskStatusFilter:Z,taskProjectFilter:W}=Qe(),M=b(Z.value==="all"?L:Z.value),N=b(W.value||L),H=b("");q(M,u=>{c.status=u===L?void 0:u,Z.value=u===L?"all":u}),q(N,u=>{c.projectId=u===L?void 0:u,W.value=u===L?null:u}),q(H,u=>{c.search=u||void 0}),M.value!==L&&(c.status=M.value),N.value!==L&&(c.projectId=N.value);function R(){t.value=null,a.value=!0}function X(u){t.value=u,a.value=!0}function $(u){h.value=u,r.value=!0}async function fe(u){try{t.value?(await s(t.value.id,u),i.add({title:"Task updated",color:"success",icon:"i-lucide-check"})):(await d(u),i.add({title:"Task created",color:"success",icon:"i-lucide-check"})),t.value=null}catch(p){i.add({title:"Failed to save task",description:p instanceof Error?p.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}}function ke(u){T.value=u,B.value=!0}async function ve(){if(T.value){y.value=!0;try{await g(T.value),i.add({title:"Task deleted",color:"success",icon:"i-lucide-trash"}),B.value=!1,T.value=null}catch(u){i.add({title:"Failed to delete task",description:u instanceof Error?u.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}finally{y.value=!1}}}async function re(u){try{await D(u)}catch(p){i.add({title:"Failed to update task",description:p instanceof Error?p.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}}return q([()=>x.query.selected,n],([u,p])=>{if(u&&p.length>0){const G=p.find(ee=>ee.id===u);G&&(h.value=G,r.value=!0,ue("/tasks",{replace:!0}))}},{immediate:!0}),q(()=>x.query.action,u=>{u==="new"&&(R(),ue("/tasks",{replace:!0}))},{immediate:!0}),Fe(async()=>{await Promise.all([v(),P()])}),(u,p)=>{const G=se,ee=J,_e=Ie,ge=Se,ce=ie,ye=me,be=Ee,he=ot,we=Pe,xe=dt,Te=Vt,je=He,$e=Re;return k(),V("div",Pt,[l(we,{id:"tasks",grow:""},{header:m(()=>[l(ge,{title:"Tasks"},{left:m(()=>[f("div",St,[l(G,{color:"neutral",variant:"subtle"},{default:m(()=>[F(j(o(_).total)+" total ",1)]),_:1}),o(_).done>0?(k(),z(G,{key:0,color:"success",variant:"subtle"},{default:m(()=>[F(j(o(_).done)+" done ",1)]),_:1})):E("",!0)])]),right:m(()=>[l(ee,{icon:"i-lucide-plus",label:"Add Task",onClick:R}),l(_e)]),_:1}),l(be,null,{left:m(()=>[l(ce,{modelValue:o(M),"onUpdate:modelValue":p[0]||(p[0]=S=>A(M)?M.value=S:null),items:K,"value-key":"value",class:"w-36"},null,8,["modelValue"]),l(ce,{modelValue:o(N),"onUpdate:modelValue":p[1]||(p[1]=S=>A(N)?N.value=S:null),items:o(O),"value-key":"value",class:"w-40"},null,8,["modelValue","items"])]),right:m(()=>[l(ye,{modelValue:o(H),"onUpdate:modelValue":p[2]||(p[2]=S=>A(H)?H.value=S:null),placeholder:"Search tasks...",icon:"i-lucide-search",class:"w-64"},null,8,["modelValue"])]),_:1})]),body:m(()=>[l(he,{tasks:o(w),loading:o(C),onToggle:re,onEdit:X,onDelete:ke,onCreate:R,onView:$},null,8,["tasks","loading"])]),_:1}),l(xe,{open:o(a),"onUpdate:open":p[3]||(p[3]=S=>A(a)?a.value=S:null),task:o(t),projects:o(I),onSubmit:fe},null,8,["open","task","projects"]),l(je,{open:o(r),"onUpdate:open":p[7]||(p[7]=S=>A(r)?r.value=S:null),title:o(h)?.title},{content:m(()=>[o(h)?(k(),z(Te,{key:0,task:o(h),onEdit:p[4]||(p[4]=S=>{X(o(h)),r.value=!1}),onClose:p[5]||(p[5]=S=>r.value=!1),onToggle:p[6]||(p[6]=S=>{re(o(h).id),r.value=!1})},null,8,["task"])):E("",!0)]),_:1},8,["open","title"]),l($e,{open:o(B),"onUpdate:open":p[8]||(p[8]=S=>A(B)?B.value=S:null),title:"Delete Task",description:"Are you sure you want to delete this task? This action cannot be undone.","confirm-label":"Delete","confirm-color":"error",icon:"i-lucide-trash-2",loading:o(y),onConfirm:ve,onCancel:p[9]||(p[9]=S=>T.value=null)},null,8,["open","loading"])])}}});export{$o as default};
1
+ import{_ as se}from"./BPfVf7kt.js";import{d as Q,i as U,M as V,o as k,ac as f,Z as l,$ as Y,a as o,_ as ae,ao as Ce,c as z,aa as E,af as j,w as m,ab as F,a$ as de,al as le,am as ne,a0 as J,ak as A,e as b,h as q,an as De,ah as Ue,aj as Ve,C as Fe,n as ue}from"./CBqC92gC.js";import{_ as Ie}from"./BDzVzzBM.js";import{_ as Pe,a as Se}from"./CZV2u8Xx.js";import{_ as ie}from"./tak9pMy9.js";import{_ as me}from"./4Vi9hKJC.js";import{_ as Ee}from"./DaAG12aj.js";import{_ as pe}from"./EPFrlLUV.js";import{_ as Ae}from"./Db66Rsfj.js";import{h as ze,i as te}from"./DqmQtg6Y.js";import{_ as Be}from"./BnfOmQBX.js";import{_ as Le,a as Me}from"./oBlsjU0k.js";import{_ as Oe}from"./CD2Wt775.js";import{_ as Ne}from"./Dn7zgQZh.js";import{_ as qe}from"./Bq2pktu_.js";import{_ as He}from"./CE491BHV.js";import{_ as Re}from"./B7uuK82m.js";import{u as Qe}from"./BZFf3mr_.js";import"./C35LJkds.js";import"./DUf0f355.js";import"./DrQVjmDX.js";import"./B9OPrqTh.js";import"./CltqyXO5.js";import"./DWnLv2oh.js";import"./Cyo4VJ6S.js";import"./Dfzca1IN.js";import"./JsQhjNzl.js";import"./CN_jZBEh.js";import"./BoqEl-F1.js";import"./DoIqoxBH.js";import"./C6Y-ieo6.js";import"./BXmijQzM.js";import"./DAQeLqQw.js";import"./CdIGoC9r.js";import"./CTIUqf4N.js";import"./Bt87rSlM.js";import"./Vcq4gwWv.js";import"./ClKTC8bU.js";import"./DvZW6QuM.js";import"./iIxC-lNx.js";import"./88opOQSr.js";import"./iik6CYzq.js";import"./-O86rjFZ.js";import"./-Q9J9PRu.js";const Ze={class:"flex items-center gap-2"},Ge={class:"flex items-center flex-wrap gap-2 mt-2"},Je={key:4,class:"text-xs text-dimmed"},Ke=Q({__name:"TaskCard",props:{task:{}},emits:["toggle","edit","delete","view"],setup(e,{emit:x}){const i=e,w=x,n={1:{label:"Low",color:"neutral",icon:"i-lucide-arrow-down"},2:{label:"Medium",color:"warning",icon:"i-lucide-minus"},3:{label:"High",color:"error",icon:"i-lucide-arrow-up"}},C={todo:{label:"Todo",color:"neutral",icon:"i-lucide-circle"},in_progress:{label:"In Progress",color:"info",icon:"i-lucide-clock"},done:{label:"Done",color:"success",icon:"i-lucide-check-circle"},blocked:{label:"Blocked",color:"error",icon:"i-lucide-alert-circle"}},c=U(()=>n[i.task.priority]||n[2]),_=U(()=>C[i.task.status]),v=U(()=>i.task.status==="done"),d=U(()=>!!i.task.description?.trim()),s=U(()=>!i.task.dueDate||v.value?!1:new Date(i.task.dueDate)<new Date),g=U(()=>[[{label:"Edit",icon:"i-lucide-pencil",onSelect:()=>w("edit",i.task)},{label:"Delete",icon:"i-lucide-trash-2",color:"error",onSelect:()=>w("delete",i.task.id)}]]);return(D,I)=>{const P=ae,a=se,t=J,r=Ae;return k(),V("div",{class:Y(["group flex items-start gap-3 p-3 rounded-lg border border-default hover:bg-elevated transition-colors",{"opacity-60":o(v)}])},[f("button",{class:"mt-0.5 shrink-0",onClick:I[0]||(I[0]=Ce(h=>w("toggle",e.task.id),["stop"]))},[l(P,{name:o(v)?"i-lucide-check-circle-2":"i-lucide-circle",class:Y(["size-5",o(v)?"text-success":"text-dimmed hover:text-default"])},null,8,["name","class"])]),f("button",{class:"flex-1 min-w-0 text-left",onClick:I[1]||(I[1]=h=>w("view",e.task))},[f("div",Ze,[f("span",{class:Y(["font-medium",{"line-through text-dimmed":o(v)}])},j(e.task.title),3),o(d)?(k(),z(P,{key:0,name:"i-lucide-file-text",class:"size-3.5 text-dimmed shrink-0"})):E("",!0)]),f("div",Ge,[e.task.project?(k(),z(a,{key:0,variant:"subtle",color:"neutral",size:"xs"},{default:m(()=>[f("span",{class:"size-2 rounded-full mr-1",style:de({backgroundColor:e.task.project.color})},null,4),F(" "+j(e.task.project.name),1)]),_:1})):E("",!0),e.task.priority!==2?(k(),z(a,{key:1,color:o(c).color,variant:"subtle",size:"xs"},{default:m(()=>[l(P,{name:o(c).icon,class:"size-3 mr-1"},null,8,["name"]),F(" "+j(o(c).label),1)]),_:1},8,["color"])):E("",!0),e.task.status==="in_progress"||e.task.status==="blocked"?(k(),z(a,{key:2,color:o(_).color,variant:"subtle",size:"xs"},{default:m(()=>[l(P,{name:o(_).icon,class:"size-3 mr-1"},null,8,["name"]),F(" "+j(o(_).label),1)]),_:1},8,["color"])):E("",!0),e.task.dueDate?(k(),V("span",{key:3,class:Y(["text-xs flex items-center gap-1",o(s)?"text-error":"text-dimmed"])},[l(P,{name:"i-lucide-calendar",class:"size-3"}),F(" "+j(o(ze)(e.task.dueDate)),1)],2)):E("",!0),(k(!0),V(le,null,ne(e.task.tags?.slice(0,3),h=>(k(),z(a,{key:h,variant:"subtle",color:"neutral",size:"xs"},{default:m(()=>[F(j(h),1)]),_:2},1024))),128)),e.task.tags&&e.task.tags.length>3?(k(),V("span",Je," +"+j(e.task.tags.length-3),1)):E("",!0)])]),l(r,{items:o(g)},{default:m(()=>[l(t,{icon:"i-lucide-more-vertical",color:"neutral",variant:"ghost",size:"xs",class:"opacity-0 group-hover:opacity-100 transition-opacity"})]),_:1},8,["items"])],2)}}}),We=Object.assign(Ke,{__name:"TasksTaskCard"}),Xe={key:0,class:"flex items-center justify-center py-12"},Ye={class:"text-center py-8 text-dimmed"},et={key:2,class:"space-y-2"},tt=Q({__name:"TaskList",props:{tasks:{},loading:{type:Boolean}},emits:["toggle","edit","delete","create","view"],setup(e,{emit:x}){const i=x;return(w,n)=>{const C=ae,c=J,_=pe,v=We;return k(),V("div",null,[e.loading?(k(),V("div",Xe,[l(C,{name:"i-lucide-loader-2",class:"size-8 animate-spin text-dimmed"})])):e.tasks.length===0?(k(),z(_,{key:1},{default:m(()=>[f("div",Ye,[l(C,{name:"i-lucide-check-square",class:"size-12 mx-auto mb-2 opacity-50"}),n[5]||(n[5]=f("p",{class:"font-medium"}," No tasks yet ",-1)),n[6]||(n[6]=f("p",{class:"text-sm mt-1"}," Create your first task to get started. ",-1)),l(c,{class:"mt-4",icon:"i-lucide-plus",label:"Add Task",onClick:n[0]||(n[0]=d=>i("create"))})])]),_:1})):(k(),V("div",et,[(k(!0),V(le,null,ne(e.tasks,d=>(k(),z(v,{key:d.id,task:d,onToggle:n[1]||(n[1]=s=>i("toggle",s)),onEdit:n[2]||(n[2]=s=>i("edit",s)),onDelete:n[3]||(n[3]=s=>i("delete",s)),onView:n[4]||(n[4]=s=>i("view",s))},null,8,["task"]))),128))]))])}}}),ot=Object.assign(tt,{__name:"TasksTaskList"}),oe="__none__",st=Q({__name:"ProjectSelect",props:{modelValue:{},projects:{}},emits:["update:modelValue"],setup(e,{emit:x}){const i=e,w=x,n=U({get:()=>i.modelValue||oe,set:c=>w("update:modelValue",c===oe?null:c)}),C=U(()=>[{value:oe,label:"No Project"},...i.projects.filter(c=>!c.deletedAt).map(c=>({value:c.id,label:c.name}))]);return(c,_)=>{const v=ie;return k(),z(v,{modelValue:o(n),"onUpdate:modelValue":_[0]||(_[0]=d=>A(n)?n.value=d:null),items:o(C),"value-key":"value",class:"w-full"},null,8,["modelValue","items"])}}}),at=Object.assign(st,{__name:"TasksProjectSelect"}),lt={class:"task-form-body"},nt={class:"task-form-description"},it={class:"task-form-fields"},rt={class:"grid grid-cols-2 gap-4"},ct={class:"flex justify-end gap-2 w-full"},ut=Q({__name:"TaskForm",props:{open:{type:Boolean},task:{},projects:{}},emits:["update:open","submit"],setup(e,{emit:x}){const i=e,w=x,n=U(()=>!!i.task?.id),C=U(()=>n.value?"Edit Task":"Create Task"),c=b(""),_=b(""),v=b("todo"),d=b(2),s=b(null),g=b(""),D=b([]),I=[{value:"todo",label:"Todo"},{value:"in_progress",label:"In Progress"},{value:"done",label:"Done"},{value:"blocked",label:"Blocked"}],P=[{value:1,label:"Low"},{value:2,label:"Medium"},{value:3,label:"High"}],a=[[{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:"link",icon:"i-lucide-link"}]],t=U(()=>_.value||void 0);q(()=>i.task,T=>{T?(c.value=T.title,_.value=T.description||"",v.value=T.status,d.value=T.priority,s.value=T.projectId||null,g.value=T.dueDate&&new Date(T.dueDate).toISOString().split("T")[0]||"",D.value=T.tags||[]):r()},{immediate:!0}),q(()=>i.open,T=>{T||r()});function r(){c.value="",_.value="",v.value="todo",d.value=2,s.value=null,g.value="",D.value=[]}function h(){w("update:open",!1)}function B(){if(!c.value.trim())return;const T={title:c.value.trim(),description:_.value.trim()||void 0,status:v.value,priority:d.value,projectId:s.value,dueDate:g.value||void 0,tags:D.value};w("submit",T),h()}return(T,y)=>{const K=me,O=Be,Z=Le,W=Me,M=ie,N=at,H=Oe,R=J,X=Ne;return k(),z(X,{open:e.open,title:o(C),"onUpdate:open":y[7]||(y[7]=$=>w("update:open",$))},{body:m(()=>[f("div",lt,[l(O,{label:"Title",required:""},{default:m(()=>[l(K,{modelValue:o(c),"onUpdate:modelValue":y[0]||(y[0]=$=>A(c)?c.value=$:null),placeholder:"Task title...",autofocus:"",class:"w-full"},null,8,["modelValue"])]),_:1}),f("div",nt,[y[8]||(y[8]=f("label",{class:"block text-sm font-medium text-default mb-1.5"},"Description",-1)),l(W,{"model-value":o(t),"content-type":"markdown",placeholder:"Add a description...",class:"task-editor","onUpdate:modelValue":y[1]||(y[1]=$=>_.value=$)},{default:m(({editor:$})=>[l(Z,{editor:$,items:a,class:"border-b border-default"},null,8,["editor"])]),_:1},8,["model-value"])]),f("div",it,[f("div",rt,[l(O,{label:"Status"},{default:m(()=>[l(M,{modelValue:o(v),"onUpdate:modelValue":y[2]||(y[2]=$=>A(v)?v.value=$:null),items:I,"value-key":"value",class:"w-full"},null,8,["modelValue"])]),_:1}),l(O,{label:"Priority"},{default:m(()=>[l(M,{modelValue:o(d),"onUpdate:modelValue":y[3]||(y[3]=$=>A(d)?d.value=$:null),items:P,"value-key":"value",class:"w-full"},null,8,["modelValue"])]),_:1})]),l(O,{label:"Project"},{default:m(()=>[l(N,{modelValue:o(s),"onUpdate:modelValue":y[4]||(y[4]=$=>A(s)?s.value=$:null),projects:e.projects,class:"w-full"},null,8,["modelValue","projects"])]),_:1}),l(O,{label:"Due Date"},{default:m(()=>[l(K,{modelValue:o(g),"onUpdate:modelValue":y[5]||(y[5]=$=>A(g)?g.value=$:null),type:"date",class:"w-full"},null,8,["modelValue"])]),_:1}),l(O,{label:"Tags"},{default:m(()=>[l(H,{modelValue:o(D),"onUpdate:modelValue":y[6]||(y[6]=$=>A(D)?D.value=$:null),placeholder:"Add tags...",class:"w-full"},null,8,["modelValue"])]),_:1})])])]),footer:m(()=>[f("div",ct,[l(R,{color:"neutral",variant:"ghost",onClick:h},{default:m(()=>[...y[9]||(y[9]=[F(" Cancel ",-1)])]),_:1}),l(R,{disabled:!o(c).trim(),onClick:B},{default:m(()=>[F(j(o(n)?"Save Changes":"Create Task"),1)]),_:1},8,["disabled"])])]),_:1},8,["open","title"])}}}),dt=Object.assign(ut,{__name:"TasksTaskForm"}),mt={class:"flex items-start justify-between gap-4"},pt={class:"text-lg font-semibold"},ft={class:"space-y-4"},kt={class:"flex flex-wrap items-center gap-3 text-sm"},vt={key:0,class:"flex items-center gap-1.5"},_t={class:"text-dimmed"},gt={class:"flex items-center gap-1.5"},yt={key:1,class:"flex items-center gap-1.5"},bt={class:"text-dimmed"},ht={key:0,class:"flex flex-wrap gap-1.5"},wt={key:1,class:"pt-2 border-t border-default"},xt={class:"prose prose-sm dark:prose-invert max-w-none"},Tt={class:"pt-2 border-t border-default text-xs text-dimmed space-y-1"},jt={key:0},$t={key:0},Ct={class:"flex justify-between"},Dt={class:"flex gap-2"},Ut=Q({__name:"TaskDetail",props:{task:{}},emits:["edit","close","toggle"],setup(e,{emit:x}){const i=e,w=x,n={1:{label:"Low",color:"neutral"},2:{label:"Medium",color:"warning"},3:{label:"High",color:"error"}},C={todo:{label:"Todo",color:"neutral"},in_progress:{label:"In Progress",color:"info"},done:{label:"Done",color:"success"},blocked:{label:"Blocked",color:"error"}},c=U(()=>n[i.task.priority]||n[2]),_=U(()=>C[i.task.status]),v=U(()=>i.task.status==="done");return(d,s)=>{const g=se,D=ae,I=qe,P=J,a=pe;return k(),z(a,null,{header:m(()=>[f("div",mt,[f("h3",pt,j(e.task.title),1),l(g,{color:o(_).color,variant:"subtle"},{default:m(()=>[F(j(o(_).label),1)]),_:1},8,["color"])])]),footer:m(()=>[f("div",Ct,[l(P,{icon:o(v)?"i-lucide-rotate-ccw":"i-lucide-check",color:o(v)?"neutral":"success",variant:o(v)?"ghost":"soft",onClick:s[0]||(s[0]=t=>w("toggle"))},{default:m(()=>[F(j(o(v)?"Mark Incomplete":"Mark Complete"),1)]),_:1},8,["icon","color","variant"]),f("div",Dt,[l(P,{color:"neutral",variant:"ghost",onClick:s[1]||(s[1]=t=>w("close"))},{default:m(()=>[...s[3]||(s[3]=[F(" Close ",-1)])]),_:1}),l(P,{icon:"i-lucide-pencil",onClick:s[2]||(s[2]=t=>w("edit"))},{default:m(()=>[...s[4]||(s[4]=[F(" Edit ",-1)])]),_:1})])])]),default:m(()=>[f("div",ft,[f("div",kt,[e.task.project?(k(),V("div",vt,[f("span",{class:"size-2.5 rounded-full",style:de({backgroundColor:e.task.project.color})},null,4),f("span",_t,j(e.task.project.name),1)])):E("",!0),f("div",gt,[l(D,{name:"i-lucide-flag",class:"size-4 text-dimmed"}),l(g,{color:o(c).color,variant:"subtle",size:"xs"},{default:m(()=>[F(j(o(c).label),1)]),_:1},8,["color"])]),e.task.dueDate?(k(),V("div",yt,[l(D,{name:"i-lucide-calendar",class:"size-4 text-dimmed"}),f("span",bt,j(o(te)(e.task.dueDate)),1)])):E("",!0)]),e.task.tags&&e.task.tags.length>0?(k(),V("div",ht,[(k(!0),V(le,null,ne(e.task.tags,t=>(k(),z(g,{key:t,variant:"subtle",color:"neutral",size:"sm"},{default:m(()=>[F(j(t),1)]),_:2},1024))),128))])):E("",!0),e.task.description?(k(),V("div",wt,[f("div",xt,[l(I,{value:e.task.description},null,8,["value"])])])):E("",!0),f("div",Tt,[f("p",null,[F(" Created: "+j(o(te)(e.task.createdAt))+" ",1),e.task.creator?(k(),V("span",jt," by "+j(e.task.creator.name),1)):E("",!0)]),e.task.completedAt?(k(),V("p",$t," Completed: "+j(o(te)(e.task.completedAt)),1)):E("",!0)])])]),_:1})}}}),Vt=Object.assign(Ut,{__name:"TasksTaskDetail"});function Ft(){const e=b([]),x=b(!1),i=b(null),w=b([]),n=De({status:void 0,projectId:void 0,search:void 0,includeDeleted:!1});async function C(a){x.value=!0,i.value=null;const t=a||n;try{const r={};t.status&&(Array.isArray(t.status)?t.status.forEach(B=>r.status=B):r.status=t.status),t.projectId&&(r.projectId=t.projectId),t.search&&(r.search=t.search),t.includeDeleted&&(r.includeDeleted="true");const h=await $fetch("/api/tasks",{query:r});return e.value=h.data,h.data}catch(r){throw i.value="Failed to load tasks",console.error("Failed to load tasks:",r),r}finally{x.value=!1}}async function c(){try{const a=await $fetch("/api/tasks/tags");return w.value=a.data,a.data}catch(a){throw console.error("Failed to fetch tags:",a),a}}async function _(a){try{return(await $fetch(`/api/tasks/${a}`)).data}catch(t){throw console.error("Failed to get task:",t),t}}async function v(a){try{const t=await $fetch("/api/tasks",{method:"POST",body:a});return e.value=[t.data,...e.value],t.data}catch(t){throw console.error("Failed to create task:",t),t}}async function d(a,t){try{const r=await $fetch(`/api/tasks/${a}`,{method:"PUT",body:t}),h=e.value.findIndex(B=>B.id===a);return h!==-1&&(e.value[h]=r.data),r.data}catch(r){throw console.error("Failed to update task:",r),r}}async function s(a){try{const t=await $fetch(`/api/tasks/${a}`,{method:"DELETE"});return e.value=e.value.filter(r=>r.id!==a),t.data}catch(t){throw console.error("Failed to delete task:",t),t}}async function g(a){try{const t=await $fetch(`/api/tasks/${a}/restore`,{method:"POST"});return await C(),t.data}catch(t){throw console.error("Failed to restore task:",t),t}}async function D(a){const t=e.value.find(h=>h.id===a);if(!t)return;const r=t.status==="done"?"todo":"done";return d(a,{status:r})}const I=U(()=>{let a=[...e.value];if(n.status){const t=Array.isArray(n.status)?n.status:[n.status];a=a.filter(r=>t.includes(r.status))}if(n.projectId&&(a=a.filter(t=>t.projectId===n.projectId)),n.search){const t=n.search.toLowerCase();a=a.filter(r=>r.title.toLowerCase().includes(t)||r.description?.toLowerCase().includes(t))}return n.includeDeleted||(a=a.filter(t=>!t.deletedAt)),a}),P=U(()=>{const a={todo:0,in_progress:0,done:0,blocked:0,total:0};return e.value.forEach(t=>{t.deletedAt||(a[t.status]++,a.total++)}),a});return{tasks:e,filteredTasks:I,loading:x,error:i,tags:w,filters:n,taskCounts:P,fetchTasks:C,fetchTags:c,getTask:_,createTask:v,updateTask:d,deleteTask:s,restoreTask:g,toggleComplete:D}}function It(){const e=b([]),x=b(!1),i=b(null);async function w(d=!1){x.value=!0,i.value=null;try{const s=await $fetch("/api/projects",{query:{includeDeleted:d.toString()}});return e.value=s.data,s.data}catch(s){throw i.value="Failed to load projects",console.error("Failed to load projects:",s),s}finally{x.value=!1}}async function n(d){try{return(await $fetch(`/api/projects/${d}`)).data}catch(s){throw console.error("Failed to get project:",s),s}}async function C(d){try{const s=await $fetch("/api/projects",{method:"POST",body:d});return e.value=[...e.value,s.data],s.data}catch(s){throw console.error("Failed to create project:",s),s}}async function c(d,s){try{const g=await $fetch(`/api/projects/${d}`,{method:"PUT",body:s}),D=e.value.findIndex(I=>I.id===d);return D!==-1&&(e.value[D]=g.data),g.data}catch(g){throw console.error("Failed to update project:",g),g}}async function _(d){try{const s=await $fetch(`/api/projects/${d}`,{method:"DELETE"});return e.value=e.value.filter(g=>g.id!==d),s.data}catch(s){throw console.error("Failed to delete project:",s),s}}function v(d){if(d)return e.value.find(s=>s.id===d)}return{projects:e,loading:x,error:i,fetchProjects:w,getProject:n,createProject:C,updateProject:c,deleteProject:_,getProjectById:v}}const Pt={class:"contents"},St={class:"flex items-center gap-2 text-sm"},L="__all__",$o=Q({__name:"tasks",setup(e){const x=Ue(),i=Ve(),{filteredTasks:w,tasks:n,loading:C,filters:c,taskCounts:_,fetchTasks:v,createTask:d,updateTask:s,deleteTask:g,toggleComplete:D}=Ft(),{projects:I,fetchProjects:P}=It(),a=b(!1),t=b(null),r=b(!1),h=b(null),B=b(!1),T=b(null),y=b(!1),K=[{value:L,label:"All Status"},{value:"todo",label:"Todo"},{value:"in_progress",label:"In Progress"},{value:"done",label:"Done"},{value:"blocked",label:"Blocked"}],O=U(()=>[{value:L,label:"All Projects"},...I.value.filter(u=>!u.deletedAt).map(u=>({value:u.id,label:u.name}))]),{taskStatusFilter:Z,taskProjectFilter:W}=Qe(),M=b(Z.value==="all"?L:Z.value),N=b(W.value||L),H=b("");q(M,u=>{c.status=u===L?void 0:u,Z.value=u===L?"all":u}),q(N,u=>{c.projectId=u===L?void 0:u,W.value=u===L?null:u}),q(H,u=>{c.search=u||void 0}),M.value!==L&&(c.status=M.value),N.value!==L&&(c.projectId=N.value);function R(){t.value=null,a.value=!0}function X(u){t.value=u,a.value=!0}function $(u){h.value=u,r.value=!0}async function fe(u){try{t.value?(await s(t.value.id,u),i.add({title:"Task updated",color:"success",icon:"i-lucide-check"})):(await d(u),i.add({title:"Task created",color:"success",icon:"i-lucide-check"})),t.value=null}catch(p){i.add({title:"Failed to save task",description:p instanceof Error?p.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}}function ke(u){T.value=u,B.value=!0}async function ve(){if(T.value){y.value=!0;try{await g(T.value),i.add({title:"Task deleted",color:"success",icon:"i-lucide-trash"}),B.value=!1,T.value=null}catch(u){i.add({title:"Failed to delete task",description:u instanceof Error?u.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}finally{y.value=!1}}}async function re(u){try{await D(u)}catch(p){i.add({title:"Failed to update task",description:p instanceof Error?p.message:"An unexpected error occurred",color:"error",icon:"i-lucide-alert-circle"})}}return q([()=>x.query.selected,n],([u,p])=>{if(u&&p.length>0){const G=p.find(ee=>ee.id===u);G&&(h.value=G,r.value=!0,ue("/tasks",{replace:!0}))}},{immediate:!0}),q(()=>x.query.action,u=>{u==="new"&&(R(),ue("/tasks",{replace:!0}))},{immediate:!0}),Fe(async()=>{await Promise.all([v(),P()])}),(u,p)=>{const G=se,ee=J,_e=Ie,ge=Se,ce=ie,ye=me,be=Ee,he=ot,we=Pe,xe=dt,Te=Vt,je=He,$e=Re;return k(),V("div",Pt,[l(we,{id:"tasks",grow:""},{header:m(()=>[l(ge,{title:"Tasks"},{left:m(()=>[f("div",St,[l(G,{color:"neutral",variant:"subtle"},{default:m(()=>[F(j(o(_).total)+" total ",1)]),_:1}),o(_).done>0?(k(),z(G,{key:0,color:"success",variant:"subtle"},{default:m(()=>[F(j(o(_).done)+" done ",1)]),_:1})):E("",!0)])]),right:m(()=>[l(ee,{icon:"i-lucide-plus",label:"Add Task",onClick:R}),l(_e)]),_:1}),l(be,null,{left:m(()=>[l(ce,{modelValue:o(M),"onUpdate:modelValue":p[0]||(p[0]=S=>A(M)?M.value=S:null),items:K,"value-key":"value",class:"w-36"},null,8,["modelValue"]),l(ce,{modelValue:o(N),"onUpdate:modelValue":p[1]||(p[1]=S=>A(N)?N.value=S:null),items:o(O),"value-key":"value",class:"w-40"},null,8,["modelValue","items"])]),right:m(()=>[l(ye,{modelValue:o(H),"onUpdate:modelValue":p[2]||(p[2]=S=>A(H)?H.value=S:null),placeholder:"Search tasks...",icon:"i-lucide-search",class:"w-64"},null,8,["modelValue"])]),_:1})]),body:m(()=>[l(he,{tasks:o(w),loading:o(C),onToggle:re,onEdit:X,onDelete:ke,onCreate:R,onView:$},null,8,["tasks","loading"])]),_:1}),l(xe,{open:o(a),"onUpdate:open":p[3]||(p[3]=S=>A(a)?a.value=S:null),task:o(t),projects:o(I),onSubmit:fe},null,8,["open","task","projects"]),l(je,{open:o(r),"onUpdate:open":p[7]||(p[7]=S=>A(r)?r.value=S:null),title:o(h)?.title},{content:m(()=>[o(h)?(k(),z(Te,{key:0,task:o(h),onEdit:p[4]||(p[4]=S=>{X(o(h)),r.value=!1}),onClose:p[5]||(p[5]=S=>r.value=!1),onToggle:p[6]||(p[6]=S=>{re(o(h).id),r.value=!1})},null,8,["task"])):E("",!0)]),_:1},8,["open","title"]),l($e,{open:o(B),"onUpdate:open":p[8]||(p[8]=S=>A(B)?B.value=S:null),title:"Delete Task",description:"Are you sure you want to delete this task? This action cannot be undone.","confirm-label":"Delete","confirm-color":"error",icon:"i-lucide-trash-2",loading:o(y),onConfirm:ve,onCancel:p[9]||(p[9]=S=>T.value=null)},null,8,["open","loading"])])}}});export{$o as default};
@@ -1 +1 @@
1
- import{a7 as Ye,d as D,aQ as ce,aR as Me,aS as Le,e as z,i as j,a9 as Ee,a4 as pe,c as _,o,w as b,r as C,aa as W,a as e,M as R,al as ae,am as ve,m as E,h as ze,ac as ye,aK as Xe,X as Ve,F as Ze,Z as M,ao as de,bF as Qe,aY as Je,a6 as et,u as be,C as le,B as ue,bB as tt,P as Z,a$ as at,aL as _e,aG as Ke,aM as ke,bg as lt,b_ as it,bo as rt,T as nt,a5 as ot,b6 as st,ax as ut,W as dt,aH as ct,aI as pt,au as ne,aZ as Oe,aN as ft,aD as gt,aE as mt,ap as $e,b8 as vt,aO as yt,$ as O,_ as me,aF as De,af as oe,ab as Be,a1 as se,bX as ht,bY as Re,aP as bt}from"./BOCn_SGf.js";import{u as _t}from"./BWqJInD3.js";import{u as St}from"./B9o6sFST.js";import{a as xt,b as qt,P as Ct,c as It}from"./jTT1R-Vz.js";import{a as wt,u as Tt,F as Bt}from"./C6Eoiclo.js";import{u as Pt}from"./CxMuZEwX.js";import{u as We}from"./hrPTRWjM.js";import{f as Fe}from"./DZikIgHK.js";import{u as Ae}from"./DTR31rjp.js";function Ne(i,s=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY){return Math.min(a,Math.max(s,i))}const zt=[" ","Enter","ArrowUp","ArrowDown"],kt=[" ","Enter"],U=10;function he(i,s,a){return i===void 0?!1:Array.isArray(i)?i.some(t=>Pe(t,s,a)):Pe(i,s,a)}function Pe(i,s,a){return i===void 0||s===void 0?!1:typeof i=="string"?i===s:typeof a=="function"?a(i,s):typeof a=="string"?i?.[a]===s?.[a]:Ye(i,s)}function At(i){return i==null||i===""||Array.isArray(i)&&i.length===0}const Lt={key:0,value:""},[Q,He]=ce("SelectRoot");var Et=D({inheritAttrs:!1,__name:"SelectRoot",props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1,default:void 0},by:{type:[String,Function],required:!1},dir:{type:String,required:!1},multiple:{type:Boolean,required:!1},autocomplete:{type:String,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:["update:modelValue","update:open"],setup(i,{emit:s}){const a=i,t=s,{required:n,disabled:u,multiple:m,dir:S}=Me(a),v=Le(a,"modelValue",t,{defaultValue:a.defaultValue??(m.value?[]:void 0),passive:a.modelValue===void 0,deep:!0}),y=Le(a,"open",t,{defaultValue:a.defaultOpen,passive:a.open===void 0}),B=z(),w=z(),x=z({x:0,y:0}),I=j(()=>m.value&&Array.isArray(v.value)?v.value?.length===0:Ee(v.value));pe({isProvider:!0});const c=_t(S),$=St(B),A=z(new Set),G=j(()=>Array.from(A.value).map(r=>r.value).join(";"));function V(r){if(m.value){const h=Array.isArray(v.value)?[...v.value]:[],d=h.findIndex(f=>Pe(f,r,a.by));d===-1?h.push(r):h.splice(d,1),v.value=[...h]}else v.value=r}function k(r){return Array.from(A.value).find(h=>he(r,h.value,a.by))}return He({triggerElement:B,onTriggerChange:r=>{B.value=r},valueElement:w,onValueElementChange:r=>{w.value=r},contentId:"",modelValue:v,onValueChange:V,by:a.by,open:y,multiple:m,required:n,onOpenChange:r=>{y.value=r},dir:c,triggerPointerDownPosRef:x,disabled:u,isEmptyModelValue:I,optionsSet:A,onOptionAdd:r=>{const h=k(r.value);h&&A.value.delete(h),A.value.add(r)},onOptionRemove:r=>{const h=k(r.value);h&&A.value.delete(h)}}),(r,h)=>(o(),_(e(xt),null,{default:b(()=>[C(r.$slots,"default",{modelValue:e(v),open:e(y)}),e($)?(o(),_(Dt,{key:G.value,"aria-hidden":"true",tabindex:"-1",multiple:e(m),required:e(n),name:r.name,autocomplete:r.autocomplete,disabled:e(u),value:e(v)},{default:b(()=>[e(Ee)(e(v))?(o(),R("option",Lt)):W("v-if",!0),(o(!0),R(ae,null,ve(Array.from(A.value),d=>(o(),R("option",E({key:d.value??""},{ref_for:!0},d),null,16))),128))]),_:1},8,["multiple","required","name","autocomplete","disabled","value"])):W("v-if",!0)]),_:3}))}}),Ot=Et,$t=D({__name:"BubbleSelect",props:{autocomplete:{type:String,required:!1},autofocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},form:{type:String,required:!1},multiple:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1},size:{type:Number,required:!1},value:{type:null,required:!1}},setup(i){const s=i,a=z(),t=Q();ze(()=>s.value,(u,m)=>{const S=window.HTMLSelectElement.prototype,y=Object.getOwnPropertyDescriptor(S,"value").set;if(u!==m&&y&&a.value){const B=new Event("change",{bubbles:!0});y.call(a.value,u),a.value.dispatchEvent(B)}});function n(u){t.onValueChange(u.target.value)}return(u,m)=>(o(),_(e(Xe),{"as-child":""},{default:b(()=>[ye("select",E({ref_key:"selectElement",ref:a},s,{onInput:n}),[C(u.$slots,"default")],16)]),_:3}))}}),Dt=$t,Rt=D({__name:"SelectPopperPosition",props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:"start"},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,default:U},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}},setup(i){const a=Ve(i);return(t,n)=>(o(),_(e(qt),E(e(a),{style:{boxSizing:"border-box","--reka-select-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-select-content-available-width":"var(--reka-popper-available-width)","--reka-select-content-available-height":"var(--reka-popper-available-height)","--reka-select-trigger-width":"var(--reka-popper-anchor-width)","--reka-select-trigger-height":"var(--reka-popper-anchor-height)"}}),{default:b(()=>[C(t.$slots,"default")]),_:3},16))}}),Ft=Rt;const je={onViewportChange:()=>{},itemTextRefCallback:()=>{},itemRefCallback:()=>{}},[Se,Ge]=ce("SelectContent");var Nt=D({__name:"SelectContentImpl",props:{position:{type:String,required:!1,default:"item-aligned"},bodyLock:{type:Boolean,required:!1,default:!0},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:"start"},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}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(i,{emit:s}){const a=i,t=s,n=Q();Pt(),wt(a.bodyLock);const{CollectionSlot:u,getItems:m}=pe(),S=z();Tt(S);const{search:v,handleTypeaheadSearch:y}=We(),B=z(),w=z(),x=z(),I=z(!1),c=z(!1),$=z(!1);function A(){w.value&&S.value&&Fe([w.value,S.value])}ze(I,()=>{A()});const{onOpenChange:G,triggerPointerDownPosRef:V}=n;Ze(d=>{if(!S.value)return;let f={x:0,y:0};const q=P=>{f={x:Math.abs(Math.round(P.pageX)-(V.value?.x??0)),y:Math.abs(Math.round(P.pageY)-(V.value?.y??0))}},T=P=>{P.pointerType!=="touch"&&(f.x<=10&&f.y<=10?P.preventDefault():S.value?.contains(P.target)||G(!1),document.removeEventListener("pointermove",q),V.value=null)};V.value!==null&&(document.addEventListener("pointermove",q),document.addEventListener("pointerup",T,{capture:!0,once:!0})),d(()=>{document.removeEventListener("pointermove",q),document.removeEventListener("pointerup",T,{capture:!0})})});function k(d){const f=d.ctrlKey||d.altKey||d.metaKey;if(d.key==="Tab"&&d.preventDefault(),!f&&d.key.length===1&&y(d.key,m()),["ArrowUp","ArrowDown","Home","End"].includes(d.key)){let T=[...m().map(P=>P.ref)];if(["ArrowUp","End"].includes(d.key)&&(T=T.slice().reverse()),["ArrowUp","ArrowDown"].includes(d.key)){const P=d.target,X=T.indexOf(P);T=T.slice(X+1)}setTimeout(()=>Fe(T)),d.preventDefault()}}const r=j(()=>a.position==="popper"?a:{}),h=Ve(r.value);return Ge({content:S,viewport:B,onViewportChange:d=>{B.value=d},itemRefCallback:(d,f,q)=>{const T=!c.value&&!q,P=he(n.modelValue.value,f,n.by);if(n.multiple.value){if($.value)return;(P||T)&&(w.value=d,P&&($.value=!0))}else(P||T)&&(w.value=d);T&&(c.value=!0)},selectedItem:w,selectedItemText:x,onItemLeave:()=>{S.value?.focus()},itemTextRefCallback:(d,f,q)=>{const T=!c.value&&!q;(he(n.modelValue.value,f,n.by)||T)&&(x.value=d)},focusSelectedItem:A,position:a.position,isPositioned:I,searchRef:v}),(d,f)=>(o(),_(e(u),null,{default:b(()=>[M(e(Bt),{"as-child":"",onMountAutoFocus:f[6]||(f[6]=de(()=>{},["prevent"])),onUnmountAutoFocus:f[7]||(f[7]=q=>{t("closeAutoFocus",q),!q.defaultPrevented&&(e(n).triggerElement.value?.focus({preventScroll:!0}),q.preventDefault())})},{default:b(()=>[M(e(Qe),{"as-child":"","disable-outside-pointer-events":"",onFocusOutside:f[2]||(f[2]=de(()=>{},["prevent"])),onDismiss:f[3]||(f[3]=q=>e(n).onOpenChange(!1)),onEscapeKeyDown:f[4]||(f[4]=q=>t("escapeKeyDown",q)),onPointerDownOutside:f[5]||(f[5]=q=>t("pointerDownOutside",q))},{default:b(()=>[(o(),_(Je(d.position==="popper"?Ft:Wt),E({...d.$attrs,...e(h)},{id:e(n).contentId,ref:q=>{const T=e(et)(q);T?.hasAttribute("data-reka-popper-content-wrapper")?S.value=T.firstElementChild:S.value=T},role:"listbox","data-state":e(n).open.value?"open":"closed",dir:e(n).dir.value,style:{display:"flex",flexDirection:"column",outline:"none"},onContextmenu:f[0]||(f[0]=de(()=>{},["prevent"])),onPlaced:f[1]||(f[1]=q=>I.value=!0),onKeydown:k}),{default:b(()=>[C(d.$slots,"default")]),_:3},16,["id","data-state","dir","onKeydown"]))]),_:3})]),_:3})]),_:3}))}}),Mt=Nt;const[Ta,Vt]=ce("SelectItemAlignedPosition");var Kt=D({inheritAttrs:!1,__name:"SelectItemAlignedPosition",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["placed"],setup(i,{emit:s}){const a=i,t=s,{getItems:n}=pe(),u=Q(),m=Se(),S=z(!1),v=z(!0),y=z(),{forwardRef:B,currentElement:w}=be(),{viewport:x,selectedItem:I,selectedItemText:c,focusSelectedItem:$}=m;function A(){if(u.triggerElement.value&&u.valueElement.value&&y.value&&w.value&&x?.value&&I?.value&&c?.value){const k=u.triggerElement.value.getBoundingClientRect(),r=w.value.getBoundingClientRect(),h=u.valueElement.value.getBoundingClientRect(),d=c.value.getBoundingClientRect();if(u.dir.value!=="rtl"){const K=d.left-r.left,l=h.left-K,N=k.left-l,Y=k.width+N,Ie=Math.max(Y,r.width),we=window.innerWidth-U,Te=Ne(l,U,Math.max(U,we-Ie));y.value.style.minWidth=`${Y}px`,y.value.style.left=`${Te}px`}else{const K=r.right-d.right,l=window.innerWidth-h.right-K,N=window.innerWidth-k.right-l,Y=k.width+N,Ie=Math.max(Y,r.width),we=window.innerWidth-U,Te=Ne(l,U,Math.max(U,we-Ie));y.value.style.minWidth=`${Y}px`,y.value.style.right=`${Te}px`}const f=n().map(K=>K.ref),q=window.innerHeight-U*2,T=x.value.scrollHeight,P=window.getComputedStyle(w.value),X=Number.parseInt(P.borderTopWidth,10),fe=Number.parseInt(P.paddingTop,10),p=Number.parseInt(P.borderBottomWidth,10),ge=Number.parseInt(P.paddingBottom,10),ie=X+fe+T+ge+p,xe=Math.min(I.value.offsetHeight*5,ie),ee=window.getComputedStyle(x.value),qe=Number.parseInt(ee.paddingTop,10),Ce=Number.parseInt(ee.paddingBottom,10),te=k.top+k.height/2-U,L=q-te,g=I.value.offsetHeight/2,H=I.value.offsetTop+g,F=X+fe+H,re=ie-F;if(F<=te){const K=I.value===f[f.length-1];y.value.style.bottom="0px";const l=w.value.clientHeight-x.value.offsetTop-x.value.offsetHeight,N=Math.max(L,g+(K?Ce:0)+l+p),Y=F+N;y.value.style.height=`${Y}px`}else{const K=I.value===f[0];y.value.style.top="0px";const N=Math.max(te,X+x.value.offsetTop+(K?qe:0)+g)+re;y.value.style.height=`${N}px`,x.value.scrollTop=F-te+x.value.offsetTop}y.value.style.margin=`${U}px 0`,y.value.style.minHeight=`${xe}px`,y.value.style.maxHeight=`${q}px`,t("placed"),requestAnimationFrame(()=>S.value=!0)}}const G=z("");le(async()=>{await ue(),A(),w.value&&(G.value=window.getComputedStyle(w.value).zIndex)});function V(k){k&&v.value===!0&&(A(),$?.(),v.value=!1)}return tt(u.triggerElement,()=>{A()}),Vt({contentWrapper:y,shouldExpandOnScrollRef:S,onScrollButtonChange:V}),(k,r)=>(o(),R("div",{ref_key:"contentWrapperElement",ref:y,style:at({display:"flex",flexDirection:"column",position:"fixed",zIndex:G.value})},[M(e(Z),E({ref:e(B),style:{boxSizing:"border-box",maxHeight:"100%"}},{...k.$attrs,...a}),{default:b(()=>[C(k.$slots,"default")]),_:3},16)],4))}}),Wt=Kt,Ht=D({__name:"SelectArrow",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(i){const s=i,a=Q(),t=Se(je);return(n,u)=>e(a).open.value&&e(t).position==="popper"?(o(),_(e(Ct),_e(E({key:0},s)),{default:b(()=>[C(n.$slots,"default")]),_:3},16)):W("v-if",!0)}}),jt=Ht,Gt=D({inheritAttrs:!1,__name:"SelectProvider",props:{context:{type:Object,required:!0}},setup(i){return He(i.context),Ge(je),(a,t)=>C(a.$slots,"default")}}),Ut=Gt;const Yt={key:1};var Xt=D({inheritAttrs:!1,__name:"SelectContent",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}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(i,{emit:s}){const a=i,n=Ke(a,s),u=Q(),m=z();le(()=>{m.value=new DocumentFragment});const S=z(),v=j(()=>a.forceMount||u.open.value),y=z(v.value);return ze(v,()=>{setTimeout(()=>y.value=v.value)}),(B,w)=>v.value||y.value||S.value?.present?(o(),_(e(lt),{key:0,ref_key:"presenceRef",ref:S,present:v.value},{default:b(()=>[M(Mt,_e(ke({...e(n),...B.$attrs})),{default:b(()=>[C(B.$slots,"default")]),_:3},16)]),_:3},8,["present"])):m.value?(o(),R("div",Yt,[(o(),_(it,{to:m.value},[M(Ut,{context:e(u)},{default:b(()=>[C(B.$slots,"default")]),_:3},8,["context"])],8,["to"]))])):W("v-if",!0)}}),Zt=Xt;const[Qt,Jt]=ce("SelectGroup");var ea=D({__name:"SelectGroup",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(i){const s=i,a=Ae(void 0,"reka-select-group");return Jt({id:a}),(t,n)=>(o(),_(e(Z),E({role:"group"},s,{"aria-labelledby":e(a)}),{default:b(()=>[C(t.$slots,"default")]),_:3},16,["aria-labelledby"]))}}),ta=ea;const[Ue,aa]=ce("SelectItem");var la=D({__name:"SelectItem",props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(i,{emit:s}){const a=i,t=s,{disabled:n}=Me(a),u=Q(),m=Se(),{forwardRef:S,currentElement:v}=be(),{CollectionItem:y}=pe(),B=j(()=>he(u.modelValue?.value,a.value,u.by)),w=z(!1),x=z(a.textValue??""),I=Ae(void 0,"reka-select-item-text"),c="select.select";async function $(r){if(r.defaultPrevented)return;const h={originalEvent:r,value:a.value};rt(c,A,h)}async function A(r){await ue(),t("select",r),!r.defaultPrevented&&(n.value||(u.onValueChange(a.value),u.multiple.value||u.onOpenChange(!1)))}async function G(r){await ue(),!r.defaultPrevented&&(n.value?m.onItemLeave?.():r.currentTarget?.focus({preventScroll:!0}))}async function V(r){await ue(),!r.defaultPrevented&&r.currentTarget===nt()&&m.onItemLeave?.()}async function k(r){await ue(),!(r.defaultPrevented||m.searchRef?.value!==""&&r.key===" ")&&(kt.includes(r.key)&&$(r),r.key===" "&&r.preventDefault())}if(a.value==="")throw new Error("A <SelectItem /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return le(()=>{v.value&&m.itemRefCallback(v.value,a.value,a.disabled)}),aa({value:a.value,disabled:n,textId:I,isSelected:B,onItemTextChange:r=>{x.value=((x.value||r?.textContent)??"").trim()}}),(r,h)=>(o(),_(e(y),{value:{textValue:x.value}},{default:b(()=>[M(e(Z),{ref:e(S),role:"option","aria-labelledby":e(I),"data-highlighted":w.value?"":void 0,"aria-selected":B.value,"data-state":B.value?"checked":"unchecked","aria-disabled":e(n)||void 0,"data-disabled":e(n)?"":void 0,tabindex:e(n)?void 0:-1,as:r.as,"as-child":r.asChild,onFocus:h[0]||(h[0]=d=>w.value=!0),onBlur:h[1]||(h[1]=d=>w.value=!1),onPointerup:$,onPointerdown:h[2]||(h[2]=d=>{d.currentTarget.focus({preventScroll:!0})}),onTouchend:h[3]||(h[3]=de(()=>{},["prevent","stop"])),onPointermove:G,onPointerleave:V,onKeydown:k},{default:b(()=>[C(r.$slots,"default")]),_:3},8,["aria-labelledby","data-highlighted","aria-selected","data-state","aria-disabled","data-disabled","tabindex","as","as-child"])]),_:3},8,["value"]))}}),ia=la,ra=D({__name:"SelectItemIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(i){const s=i,a=Ue();return(t,n)=>e(a).isSelected.value?(o(),_(e(Z),E({key:0,"aria-hidden":"true"},s),{default:b(()=>[C(t.$slots,"default")]),_:3},16)):W("v-if",!0)}}),na=ra,oa=D({inheritAttrs:!1,__name:"SelectItemText",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(i){const s=i,a=Q(),t=Se(),n=Ue(),{forwardRef:u,currentElement:m}=be(),S=j(()=>({value:n.value,disabled:n.disabled.value,textContent:m.value?.textContent??n.value?.toString()??""}));return le(()=>{m.value&&(n.onItemTextChange(m.value),t.itemTextRefCallback(m.value,n.value,n.disabled.value),a.onOptionAdd(S.value))}),ot(()=>{a.onOptionRemove(S.value)}),(v,y)=>(o(),_(e(Z),E({id:e(n).textId,ref:e(u)},{...s,...v.$attrs}),{default:b(()=>[C(v.$slots,"default")]),_:3},16,["id"]))}}),sa=oa,ua=D({__name:"SelectLabel",props:{for:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(i){const s=i,a=Qt({id:""});return(t,n)=>(o(),_(e(Z),E(s,{id:e(a).id}),{default:b(()=>[C(t.$slots,"default")]),_:3},16,["id"]))}}),da=ua,ca=D({__name:"SelectPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(i){const s=i;return(a,t)=>(o(),_(e(st),_e(ke(s)),{default:b(()=>[C(a.$slots,"default")]),_:3},16))}}),pa=ca,fa=D({__name:"SelectSeparator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(i){const s=i;return(a,t)=>(o(),_(e(Z),E({"aria-hidden":"true"},s),{default:b(()=>[C(a.$slots,"default")]),_:3},16))}}),ga=fa,ma=D({__name:"SelectTrigger",props:{disabled:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(i){const s=i,a=Q(),{forwardRef:t,currentElement:n}=be(),u=j(()=>a.disabled?.value||s.disabled);a.contentId||=Ae(void 0,"reka-select-content"),le(()=>{a.onTriggerChange(n.value)});const{getItems:m}=pe(),{search:S,handleTypeaheadSearch:v,resetTypeahead:y}=We();function B(){u.value||(a.onOpenChange(!0),y())}function w(x){B(),a.triggerPointerDownPosRef.value={x:Math.round(x.pageX),y:Math.round(x.pageY)}}return(x,I)=>(o(),_(e(It),{"as-child":"",reference:x.reference},{default:b(()=>[M(e(Z),{ref:e(t),role:"combobox",type:x.as==="button"?"button":void 0,"aria-controls":e(a).contentId,"aria-expanded":e(a).open.value||!1,"aria-required":e(a).required?.value,"aria-autocomplete":"none",disabled:u.value,dir:e(a)?.dir.value,"data-state":e(a)?.open.value?"open":"closed","data-disabled":u.value?"":void 0,"data-placeholder":e(At)(e(a).modelValue?.value)?"":void 0,"as-child":x.asChild,as:x.as,onClick:I[0]||(I[0]=c=>{c?.currentTarget?.focus()}),onPointerdown:I[1]||(I[1]=c=>{if(c.pointerType==="touch")return c.preventDefault();const $=c.target;$.hasPointerCapture(c.pointerId)&&$.releasePointerCapture(c.pointerId),c.button===0&&c.ctrlKey===!1&&(w(c),c.preventDefault())}),onPointerup:I[2]||(I[2]=de(c=>{c.pointerType==="touch"&&w(c)},["prevent"])),onKeydown:I[3]||(I[3]=c=>{const $=e(S)!=="";!(c.ctrlKey||c.altKey||c.metaKey)&&c.key.length===1&&$&&c.key===" "||(e(v)(c.key,e(m)()),e(zt).includes(c.key)&&(B(),c.preventDefault()))})},{default:b(()=>[C(x.$slots,"default")]),_:3},8,["type","aria-controls","aria-expanded","aria-required","disabled","dir","data-state","data-disabled","data-placeholder","as-child","as"])]),_:3},8,["reference"]))}}),va=ma;const ya={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",viewport:"relative divide-y divide-default 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"},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"}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus:ring-success"},{color:"info",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus:ring-info"},{color:"warning",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus:ring-warning"},{color:"error",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus: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:ring-2 focus:ring-inset focus: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"}},Ba=Object.assign({inheritAttrs:!1},{__name:"USelect",props:{id:{type:String,required:!1},placeholder:{type:String,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,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},valueKey:{type:null,required:!1,default:"value"},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},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},autocomplete:{type:String,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},required:{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}},emits:["update:open","change","blur","focus","update:modelValue"],setup(i,{expose:s,emit:a}){const t=i,n=a,u=ut(),m=dt(),S=Ke(ct(t,"open","defaultOpen","disabled","autocomplete","required","multiple"),n),v=pt(ne(()=>t.portal)),y=ne(()=>Oe(t.content,{side:"bottom",sideOffset:8,collisionPadding:8,position:"popper"})),B=ne(()=>t.arrow),{emitFormChange:w,emitFormInput:x,emitFormBlur:I,emitFormFocus:c,size:$,color:A,id:G,name:V,highlight:k,disabled:r,ariaAttrs:h}=ft(t),{orientation:d,size:f}=gt(t),{isLeading:q,isTrailing:T,leadingIconName:P,trailingIconName:X}=mt(ne(()=>Oe(t,{trailingIcon:m.ui.icons.chevronDown}))),fe=j(()=>f.value||$.value),p=j(()=>$e({extend:$e(ya),...m.ui?.select||{}})({color:A.value,variant:t.variant,size:fe?.value,loading:t.loading,highlight:k.value,leading:q.value||!!t.avatar||!!u.leading,trailing:T.value||!!u.trailing,fieldGroup:d.value})),ge=j(()=>t.items?.length?vt(t.items)?t.items:[t.items]:[]),ie=j(()=>ge.value.flatMap(g=>g));function xe(g){if(t.multiple&&Array.isArray(g)){const H=g.map(F=>Re(ie.value,F,{labelKey:t.labelKey,valueKey:t.valueKey})).filter(F=>F!=null&&F!=="");return H.length>0?H.join(", "):void 0}return Re(ie.value,g,{labelKey:t.labelKey,valueKey:t.valueKey})}const ee=yt("triggerRef");function qe(){t.autofocus&&ee.value?.$el?.focus({focusVisible:!0})}le(()=>{setTimeout(()=>{qe()},t.autofocusDelay)});function Ce(g){t.modelModifiers?.trim&&(g=g?.trim()??null),t.modelModifiers?.number&&(g=bt(g)),t.modelModifiers?.nullable&&(g??=null),t.modelModifiers?.optional&&(g??=void 0);const H=new Event("change",{target:{value:g}});n("change",H),w(),x()}function te(g){if(g){const H=new FocusEvent("focus");n("focus",H),c()}else{const H=new FocusEvent("blur");n("blur",H),I()}}function L(g){return typeof g=="object"&&g!==null}return s({triggerRef:ne(()=>ee.value?.$el)}),(g,H)=>(o(),_(e(Ot),E({name:e(V)},e(S),{autocomplete:i.autocomplete,disabled:e(r),"default-value":i.defaultValue,"model-value":i.modelValue,"onUpdate:modelValue":Ce,"onUpdate:open":te}),{default:b(({modelValue:F,open:re})=>[M(e(va),E({id:e(G),ref_key:"triggerRef",ref:ee,"data-slot":"base",class:p.value.base({class:[t.ui?.base,t.class]})},{...g.$attrs,...e(h)}),{default:b(()=>[e(q)||i.avatar||u.leading?(o(),R("span",{key:0,"data-slot":"leading",class:O(p.value.leading({class:t.ui?.leading}))},[C(g.$slots,"leading",{modelValue:F,open:re,ui:p.value},()=>[e(q)&&e(P)?(o(),_(me,{key:0,name:e(P),"data-slot":"leadingIcon",class:O(p.value.leadingIcon({class:t.ui?.leadingIcon}))},null,8,["name","class"])):i.avatar?(o(),_(De,E({key:1,size:t.ui?.itemLeadingAvatarSize||p.value.itemLeadingAvatarSize()},i.avatar,{"data-slot":"itemLeadingAvatar",class:p.value.itemLeadingAvatar({class:t.ui?.itemLeadingAvatar})}),null,16,["size","class"])):W("",!0)])],2)):W("",!0),C(g.$slots,"default",{modelValue:F,open:re,ui:p.value},()=>[(o(!0),R(ae,null,ve([xe(F)],J=>(o(),R(ae,{key:J},[J!=null?(o(),R("span",{key:0,"data-slot":"value",class:O(p.value.value({class:t.ui?.value}))},oe(J),3)):(o(),R("span",{key:1,"data-slot":"placeholder",class:O(p.value.placeholder({class:t.ui?.placeholder}))},oe(i.placeholder??" "),3))],64))),128))]),e(T)||u.trailing?(o(),R("span",{key:1,"data-slot":"trailing",class:O(p.value.trailing({class:t.ui?.trailing}))},[C(g.$slots,"trailing",{modelValue:F,open:re,ui:p.value},()=>[e(X)?(o(),_(me,{key:0,name:e(X),"data-slot":"trailingIcon",class:O(p.value.trailingIcon({class:t.ui?.trailingIcon}))},null,8,["name","class"])):W("",!0)])],2)):W("",!0)]),_:2},1040,["id","class"]),M(e(pa),_e(ke(e(v))),{default:b(()=>[M(e(Zt),E({"data-slot":"content",class:p.value.content({class:t.ui?.content})},y.value),{default:b(()=>[C(g.$slots,"content-top"),ye("div",{role:"presentation","data-slot":"viewport",class:O(p.value.viewport({class:t.ui?.viewport}))},[(o(!0),R(ae,null,ve(ge.value,(J,K)=>(o(),_(e(ta),{key:`group-${K}`,"data-slot":"group",class:O(p.value.group({class:t.ui?.group}))},{default:b(()=>[(o(!0),R(ae,null,ve(J,(l,N)=>(o(),R(ae,{key:`group-${K}-${N}`},[L(l)&&l.type==="label"?(o(),_(e(da),{key:0,"data-slot":"label",class:O(p.value.label({class:[t.ui?.label,l.ui?.label,l.class]}))},{default:b(()=>[Be(oe(e(se)(l,t.labelKey)),1)]),_:2},1032,["class"])):L(l)&&l.type==="separator"?(o(),_(e(ga),{key:1,"data-slot":"separator",class:O(p.value.separator({class:[t.ui?.separator,l.ui?.separator,l.class]}))},null,8,["class"])):(o(),_(e(ia),{key:2,"data-slot":"item",class:O(p.value.item({class:[t.ui?.item,L(l)&&l.ui?.item,L(l)&&l.class]})),disabled:L(l)&&l.disabled,value:L(l)?e(se)(l,t.valueKey):l,onSelect:Y=>L(l)&&l.onSelect?.(Y)},{default:b(()=>[C(g.$slots,"item",{item:l,index:N,ui:p.value},()=>[C(g.$slots,"item-leading",{item:l,index:N,ui:p.value},()=>[L(l)&&l.icon?(o(),_(me,{key:0,name:l.icon,"data-slot":"itemLeadingIcon",class:O(p.value.itemLeadingIcon({class:[t.ui?.itemLeadingIcon,l.ui?.itemLeadingIcon]}))},null,8,["name","class"])):L(l)&&l.avatar?(o(),_(De,E({key:1,size:l.ui?.itemLeadingAvatarSize||t.ui?.itemLeadingAvatarSize||p.value.itemLeadingAvatarSize()},{ref_for:!0},l.avatar,{"data-slot":"itemLeadingAvatar",class:p.value.itemLeadingAvatar({class:[t.ui?.itemLeadingAvatar,l.ui?.itemLeadingAvatar]})}),null,16,["size","class"])):L(l)&&l.chip?(o(),_(ht,E({key:2,size:l.ui?.itemLeadingChipSize||t.ui?.itemLeadingChipSize||p.value.itemLeadingChipSize(),inset:"",standalone:""},{ref_for:!0},l.chip,{"data-slot":"itemLeadingChip",class:p.value.itemLeadingChip({class:[t.ui?.itemLeadingChip,l.ui?.itemLeadingChip]})}),null,16,["size","class"])):W("",!0)]),ye("span",{"data-slot":"itemWrapper",class:O(p.value.itemWrapper({class:[t.ui?.itemWrapper,L(l)&&l.ui?.itemWrapper]}))},[M(e(sa),{"data-slot":"itemLabel",class:O(p.value.itemLabel({class:[t.ui?.itemLabel,L(l)&&l.ui?.itemLabel]}))},{default:b(()=>[C(g.$slots,"item-label",{item:l,index:N},()=>[Be(oe(L(l)?e(se)(l,t.labelKey):l),1)])]),_:2},1032,["class"]),L(l)&&(e(se)(l,t.descriptionKey)||u["item-description"])?(o(),R("span",{key:0,"data-slot":"itemDescription",class:O(p.value.itemDescription({class:[t.ui?.itemDescription,L(l)&&l.ui?.itemDescription]}))},[C(g.$slots,"item-description",{item:l,index:N},()=>[Be(oe(e(se)(l,t.descriptionKey)),1)])],2)):W("",!0)],2),ye("span",{"data-slot":"itemTrailing",class:O(p.value.itemTrailing({class:[t.ui?.itemTrailing,L(l)&&l.ui?.itemTrailing]}))},[C(g.$slots,"item-trailing",{item:l,index:N,ui:p.value}),M(e(na),{"as-child":""},{default:b(()=>[M(me,{name:i.selectedIcon||e(m).ui.icons.check,"data-slot":"itemTrailingIcon",class:O(p.value.itemTrailingIcon({class:[t.ui?.itemTrailingIcon,L(l)&&l.ui?.itemTrailingIcon]}))},null,8,["name","class"])]),_:2},1024)],2)])]),_:2},1032,["class","disabled","value","onSelect"]))],64))),128))]),_:2},1032,["class"]))),128))],2),C(g.$slots,"content-bottom"),i.arrow?(o(),_(e(jt),E({key:0},B.value,{"data-slot":"arrow",class:p.value.arrow({class:t.ui?.arrow})}),null,16,["class"])):W("",!0)]),_:3},16,["class"])]),_:3},16)]),_:3},16,["name","autocomplete","disabled","default-value","model-value"]))}});export{Ba as _};
1
+ import{a7 as Ye,d as D,aQ as ce,aR as Me,aS as Le,e as z,i as j,a9 as Ee,a4 as pe,c as _,o,w as b,r as C,aa as W,a as e,M as R,al as ae,am as ve,m as E,h as ze,ac as ye,aK as Xe,X as Ve,F as Ze,Z as M,ao as de,bF as Qe,aY as Je,a6 as et,u as be,C as le,B as ue,bB as tt,P as Z,a$ as at,aL as _e,aG as Ke,aM as ke,bg as lt,b_ as it,bo as rt,T as nt,a5 as ot,b6 as st,ax as ut,W as dt,aH as ct,aI as pt,au as ne,aZ as Oe,aN as ft,aD as gt,aE as mt,ap as $e,b8 as vt,aO as yt,$ as O,_ as me,aF as De,af as oe,ab as Be,a1 as se,bX as ht,bY as Re,aP as bt}from"./CBqC92gC.js";import{u as _t}from"./B9OPrqTh.js";import{u as St}from"./CltqyXO5.js";import{a as xt,b as qt,P as Ct,c as It}from"./DWnLv2oh.js";import{a as wt,u as Tt,F as Bt}from"./Cyo4VJ6S.js";import{u as Pt}from"./Dfzca1IN.js";import{u as We}from"./JsQhjNzl.js";import{f as Fe}from"./CN_jZBEh.js";import{u as Ae}from"./BoqEl-F1.js";function Ne(i,s=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY){return Math.min(a,Math.max(s,i))}const zt=[" ","Enter","ArrowUp","ArrowDown"],kt=[" ","Enter"],U=10;function he(i,s,a){return i===void 0?!1:Array.isArray(i)?i.some(t=>Pe(t,s,a)):Pe(i,s,a)}function Pe(i,s,a){return i===void 0||s===void 0?!1:typeof i=="string"?i===s:typeof a=="function"?a(i,s):typeof a=="string"?i?.[a]===s?.[a]:Ye(i,s)}function At(i){return i==null||i===""||Array.isArray(i)&&i.length===0}const Lt={key:0,value:""},[Q,He]=ce("SelectRoot");var Et=D({inheritAttrs:!1,__name:"SelectRoot",props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1,default:void 0},by:{type:[String,Function],required:!1},dir:{type:String,required:!1},multiple:{type:Boolean,required:!1},autocomplete:{type:String,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:["update:modelValue","update:open"],setup(i,{emit:s}){const a=i,t=s,{required:n,disabled:u,multiple:m,dir:S}=Me(a),v=Le(a,"modelValue",t,{defaultValue:a.defaultValue??(m.value?[]:void 0),passive:a.modelValue===void 0,deep:!0}),y=Le(a,"open",t,{defaultValue:a.defaultOpen,passive:a.open===void 0}),B=z(),w=z(),x=z({x:0,y:0}),I=j(()=>m.value&&Array.isArray(v.value)?v.value?.length===0:Ee(v.value));pe({isProvider:!0});const c=_t(S),$=St(B),A=z(new Set),G=j(()=>Array.from(A.value).map(r=>r.value).join(";"));function V(r){if(m.value){const h=Array.isArray(v.value)?[...v.value]:[],d=h.findIndex(f=>Pe(f,r,a.by));d===-1?h.push(r):h.splice(d,1),v.value=[...h]}else v.value=r}function k(r){return Array.from(A.value).find(h=>he(r,h.value,a.by))}return He({triggerElement:B,onTriggerChange:r=>{B.value=r},valueElement:w,onValueElementChange:r=>{w.value=r},contentId:"",modelValue:v,onValueChange:V,by:a.by,open:y,multiple:m,required:n,onOpenChange:r=>{y.value=r},dir:c,triggerPointerDownPosRef:x,disabled:u,isEmptyModelValue:I,optionsSet:A,onOptionAdd:r=>{const h=k(r.value);h&&A.value.delete(h),A.value.add(r)},onOptionRemove:r=>{const h=k(r.value);h&&A.value.delete(h)}}),(r,h)=>(o(),_(e(xt),null,{default:b(()=>[C(r.$slots,"default",{modelValue:e(v),open:e(y)}),e($)?(o(),_(Dt,{key:G.value,"aria-hidden":"true",tabindex:"-1",multiple:e(m),required:e(n),name:r.name,autocomplete:r.autocomplete,disabled:e(u),value:e(v)},{default:b(()=>[e(Ee)(e(v))?(o(),R("option",Lt)):W("v-if",!0),(o(!0),R(ae,null,ve(Array.from(A.value),d=>(o(),R("option",E({key:d.value??""},{ref_for:!0},d),null,16))),128))]),_:1},8,["multiple","required","name","autocomplete","disabled","value"])):W("v-if",!0)]),_:3}))}}),Ot=Et,$t=D({__name:"BubbleSelect",props:{autocomplete:{type:String,required:!1},autofocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},form:{type:String,required:!1},multiple:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1},size:{type:Number,required:!1},value:{type:null,required:!1}},setup(i){const s=i,a=z(),t=Q();ze(()=>s.value,(u,m)=>{const S=window.HTMLSelectElement.prototype,y=Object.getOwnPropertyDescriptor(S,"value").set;if(u!==m&&y&&a.value){const B=new Event("change",{bubbles:!0});y.call(a.value,u),a.value.dispatchEvent(B)}});function n(u){t.onValueChange(u.target.value)}return(u,m)=>(o(),_(e(Xe),{"as-child":""},{default:b(()=>[ye("select",E({ref_key:"selectElement",ref:a},s,{onInput:n}),[C(u.$slots,"default")],16)]),_:3}))}}),Dt=$t,Rt=D({__name:"SelectPopperPosition",props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:"start"},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,default:U},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}},setup(i){const a=Ve(i);return(t,n)=>(o(),_(e(qt),E(e(a),{style:{boxSizing:"border-box","--reka-select-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-select-content-available-width":"var(--reka-popper-available-width)","--reka-select-content-available-height":"var(--reka-popper-available-height)","--reka-select-trigger-width":"var(--reka-popper-anchor-width)","--reka-select-trigger-height":"var(--reka-popper-anchor-height)"}}),{default:b(()=>[C(t.$slots,"default")]),_:3},16))}}),Ft=Rt;const je={onViewportChange:()=>{},itemTextRefCallback:()=>{},itemRefCallback:()=>{}},[Se,Ge]=ce("SelectContent");var Nt=D({__name:"SelectContentImpl",props:{position:{type:String,required:!1,default:"item-aligned"},bodyLock:{type:Boolean,required:!1,default:!0},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:"start"},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}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(i,{emit:s}){const a=i,t=s,n=Q();Pt(),wt(a.bodyLock);const{CollectionSlot:u,getItems:m}=pe(),S=z();Tt(S);const{search:v,handleTypeaheadSearch:y}=We(),B=z(),w=z(),x=z(),I=z(!1),c=z(!1),$=z(!1);function A(){w.value&&S.value&&Fe([w.value,S.value])}ze(I,()=>{A()});const{onOpenChange:G,triggerPointerDownPosRef:V}=n;Ze(d=>{if(!S.value)return;let f={x:0,y:0};const q=P=>{f={x:Math.abs(Math.round(P.pageX)-(V.value?.x??0)),y:Math.abs(Math.round(P.pageY)-(V.value?.y??0))}},T=P=>{P.pointerType!=="touch"&&(f.x<=10&&f.y<=10?P.preventDefault():S.value?.contains(P.target)||G(!1),document.removeEventListener("pointermove",q),V.value=null)};V.value!==null&&(document.addEventListener("pointermove",q),document.addEventListener("pointerup",T,{capture:!0,once:!0})),d(()=>{document.removeEventListener("pointermove",q),document.removeEventListener("pointerup",T,{capture:!0})})});function k(d){const f=d.ctrlKey||d.altKey||d.metaKey;if(d.key==="Tab"&&d.preventDefault(),!f&&d.key.length===1&&y(d.key,m()),["ArrowUp","ArrowDown","Home","End"].includes(d.key)){let T=[...m().map(P=>P.ref)];if(["ArrowUp","End"].includes(d.key)&&(T=T.slice().reverse()),["ArrowUp","ArrowDown"].includes(d.key)){const P=d.target,X=T.indexOf(P);T=T.slice(X+1)}setTimeout(()=>Fe(T)),d.preventDefault()}}const r=j(()=>a.position==="popper"?a:{}),h=Ve(r.value);return Ge({content:S,viewport:B,onViewportChange:d=>{B.value=d},itemRefCallback:(d,f,q)=>{const T=!c.value&&!q,P=he(n.modelValue.value,f,n.by);if(n.multiple.value){if($.value)return;(P||T)&&(w.value=d,P&&($.value=!0))}else(P||T)&&(w.value=d);T&&(c.value=!0)},selectedItem:w,selectedItemText:x,onItemLeave:()=>{S.value?.focus()},itemTextRefCallback:(d,f,q)=>{const T=!c.value&&!q;(he(n.modelValue.value,f,n.by)||T)&&(x.value=d)},focusSelectedItem:A,position:a.position,isPositioned:I,searchRef:v}),(d,f)=>(o(),_(e(u),null,{default:b(()=>[M(e(Bt),{"as-child":"",onMountAutoFocus:f[6]||(f[6]=de(()=>{},["prevent"])),onUnmountAutoFocus:f[7]||(f[7]=q=>{t("closeAutoFocus",q),!q.defaultPrevented&&(e(n).triggerElement.value?.focus({preventScroll:!0}),q.preventDefault())})},{default:b(()=>[M(e(Qe),{"as-child":"","disable-outside-pointer-events":"",onFocusOutside:f[2]||(f[2]=de(()=>{},["prevent"])),onDismiss:f[3]||(f[3]=q=>e(n).onOpenChange(!1)),onEscapeKeyDown:f[4]||(f[4]=q=>t("escapeKeyDown",q)),onPointerDownOutside:f[5]||(f[5]=q=>t("pointerDownOutside",q))},{default:b(()=>[(o(),_(Je(d.position==="popper"?Ft:Wt),E({...d.$attrs,...e(h)},{id:e(n).contentId,ref:q=>{const T=e(et)(q);T?.hasAttribute("data-reka-popper-content-wrapper")?S.value=T.firstElementChild:S.value=T},role:"listbox","data-state":e(n).open.value?"open":"closed",dir:e(n).dir.value,style:{display:"flex",flexDirection:"column",outline:"none"},onContextmenu:f[0]||(f[0]=de(()=>{},["prevent"])),onPlaced:f[1]||(f[1]=q=>I.value=!0),onKeydown:k}),{default:b(()=>[C(d.$slots,"default")]),_:3},16,["id","data-state","dir","onKeydown"]))]),_:3})]),_:3})]),_:3}))}}),Mt=Nt;const[Ta,Vt]=ce("SelectItemAlignedPosition");var Kt=D({inheritAttrs:!1,__name:"SelectItemAlignedPosition",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["placed"],setup(i,{emit:s}){const a=i,t=s,{getItems:n}=pe(),u=Q(),m=Se(),S=z(!1),v=z(!0),y=z(),{forwardRef:B,currentElement:w}=be(),{viewport:x,selectedItem:I,selectedItemText:c,focusSelectedItem:$}=m;function A(){if(u.triggerElement.value&&u.valueElement.value&&y.value&&w.value&&x?.value&&I?.value&&c?.value){const k=u.triggerElement.value.getBoundingClientRect(),r=w.value.getBoundingClientRect(),h=u.valueElement.value.getBoundingClientRect(),d=c.value.getBoundingClientRect();if(u.dir.value!=="rtl"){const K=d.left-r.left,l=h.left-K,N=k.left-l,Y=k.width+N,Ie=Math.max(Y,r.width),we=window.innerWidth-U,Te=Ne(l,U,Math.max(U,we-Ie));y.value.style.minWidth=`${Y}px`,y.value.style.left=`${Te}px`}else{const K=r.right-d.right,l=window.innerWidth-h.right-K,N=window.innerWidth-k.right-l,Y=k.width+N,Ie=Math.max(Y,r.width),we=window.innerWidth-U,Te=Ne(l,U,Math.max(U,we-Ie));y.value.style.minWidth=`${Y}px`,y.value.style.right=`${Te}px`}const f=n().map(K=>K.ref),q=window.innerHeight-U*2,T=x.value.scrollHeight,P=window.getComputedStyle(w.value),X=Number.parseInt(P.borderTopWidth,10),fe=Number.parseInt(P.paddingTop,10),p=Number.parseInt(P.borderBottomWidth,10),ge=Number.parseInt(P.paddingBottom,10),ie=X+fe+T+ge+p,xe=Math.min(I.value.offsetHeight*5,ie),ee=window.getComputedStyle(x.value),qe=Number.parseInt(ee.paddingTop,10),Ce=Number.parseInt(ee.paddingBottom,10),te=k.top+k.height/2-U,L=q-te,g=I.value.offsetHeight/2,H=I.value.offsetTop+g,F=X+fe+H,re=ie-F;if(F<=te){const K=I.value===f[f.length-1];y.value.style.bottom="0px";const l=w.value.clientHeight-x.value.offsetTop-x.value.offsetHeight,N=Math.max(L,g+(K?Ce:0)+l+p),Y=F+N;y.value.style.height=`${Y}px`}else{const K=I.value===f[0];y.value.style.top="0px";const N=Math.max(te,X+x.value.offsetTop+(K?qe:0)+g)+re;y.value.style.height=`${N}px`,x.value.scrollTop=F-te+x.value.offsetTop}y.value.style.margin=`${U}px 0`,y.value.style.minHeight=`${xe}px`,y.value.style.maxHeight=`${q}px`,t("placed"),requestAnimationFrame(()=>S.value=!0)}}const G=z("");le(async()=>{await ue(),A(),w.value&&(G.value=window.getComputedStyle(w.value).zIndex)});function V(k){k&&v.value===!0&&(A(),$?.(),v.value=!1)}return tt(u.triggerElement,()=>{A()}),Vt({contentWrapper:y,shouldExpandOnScrollRef:S,onScrollButtonChange:V}),(k,r)=>(o(),R("div",{ref_key:"contentWrapperElement",ref:y,style:at({display:"flex",flexDirection:"column",position:"fixed",zIndex:G.value})},[M(e(Z),E({ref:e(B),style:{boxSizing:"border-box",maxHeight:"100%"}},{...k.$attrs,...a}),{default:b(()=>[C(k.$slots,"default")]),_:3},16)],4))}}),Wt=Kt,Ht=D({__name:"SelectArrow",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(i){const s=i,a=Q(),t=Se(je);return(n,u)=>e(a).open.value&&e(t).position==="popper"?(o(),_(e(Ct),_e(E({key:0},s)),{default:b(()=>[C(n.$slots,"default")]),_:3},16)):W("v-if",!0)}}),jt=Ht,Gt=D({inheritAttrs:!1,__name:"SelectProvider",props:{context:{type:Object,required:!0}},setup(i){return He(i.context),Ge(je),(a,t)=>C(a.$slots,"default")}}),Ut=Gt;const Yt={key:1};var Xt=D({inheritAttrs:!1,__name:"SelectContent",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}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(i,{emit:s}){const a=i,n=Ke(a,s),u=Q(),m=z();le(()=>{m.value=new DocumentFragment});const S=z(),v=j(()=>a.forceMount||u.open.value),y=z(v.value);return ze(v,()=>{setTimeout(()=>y.value=v.value)}),(B,w)=>v.value||y.value||S.value?.present?(o(),_(e(lt),{key:0,ref_key:"presenceRef",ref:S,present:v.value},{default:b(()=>[M(Mt,_e(ke({...e(n),...B.$attrs})),{default:b(()=>[C(B.$slots,"default")]),_:3},16)]),_:3},8,["present"])):m.value?(o(),R("div",Yt,[(o(),_(it,{to:m.value},[M(Ut,{context:e(u)},{default:b(()=>[C(B.$slots,"default")]),_:3},8,["context"])],8,["to"]))])):W("v-if",!0)}}),Zt=Xt;const[Qt,Jt]=ce("SelectGroup");var ea=D({__name:"SelectGroup",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(i){const s=i,a=Ae(void 0,"reka-select-group");return Jt({id:a}),(t,n)=>(o(),_(e(Z),E({role:"group"},s,{"aria-labelledby":e(a)}),{default:b(()=>[C(t.$slots,"default")]),_:3},16,["aria-labelledby"]))}}),ta=ea;const[Ue,aa]=ce("SelectItem");var la=D({__name:"SelectItem",props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(i,{emit:s}){const a=i,t=s,{disabled:n}=Me(a),u=Q(),m=Se(),{forwardRef:S,currentElement:v}=be(),{CollectionItem:y}=pe(),B=j(()=>he(u.modelValue?.value,a.value,u.by)),w=z(!1),x=z(a.textValue??""),I=Ae(void 0,"reka-select-item-text"),c="select.select";async function $(r){if(r.defaultPrevented)return;const h={originalEvent:r,value:a.value};rt(c,A,h)}async function A(r){await ue(),t("select",r),!r.defaultPrevented&&(n.value||(u.onValueChange(a.value),u.multiple.value||u.onOpenChange(!1)))}async function G(r){await ue(),!r.defaultPrevented&&(n.value?m.onItemLeave?.():r.currentTarget?.focus({preventScroll:!0}))}async function V(r){await ue(),!r.defaultPrevented&&r.currentTarget===nt()&&m.onItemLeave?.()}async function k(r){await ue(),!(r.defaultPrevented||m.searchRef?.value!==""&&r.key===" ")&&(kt.includes(r.key)&&$(r),r.key===" "&&r.preventDefault())}if(a.value==="")throw new Error("A <SelectItem /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return le(()=>{v.value&&m.itemRefCallback(v.value,a.value,a.disabled)}),aa({value:a.value,disabled:n,textId:I,isSelected:B,onItemTextChange:r=>{x.value=((x.value||r?.textContent)??"").trim()}}),(r,h)=>(o(),_(e(y),{value:{textValue:x.value}},{default:b(()=>[M(e(Z),{ref:e(S),role:"option","aria-labelledby":e(I),"data-highlighted":w.value?"":void 0,"aria-selected":B.value,"data-state":B.value?"checked":"unchecked","aria-disabled":e(n)||void 0,"data-disabled":e(n)?"":void 0,tabindex:e(n)?void 0:-1,as:r.as,"as-child":r.asChild,onFocus:h[0]||(h[0]=d=>w.value=!0),onBlur:h[1]||(h[1]=d=>w.value=!1),onPointerup:$,onPointerdown:h[2]||(h[2]=d=>{d.currentTarget.focus({preventScroll:!0})}),onTouchend:h[3]||(h[3]=de(()=>{},["prevent","stop"])),onPointermove:G,onPointerleave:V,onKeydown:k},{default:b(()=>[C(r.$slots,"default")]),_:3},8,["aria-labelledby","data-highlighted","aria-selected","data-state","aria-disabled","data-disabled","tabindex","as","as-child"])]),_:3},8,["value"]))}}),ia=la,ra=D({__name:"SelectItemIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(i){const s=i,a=Ue();return(t,n)=>e(a).isSelected.value?(o(),_(e(Z),E({key:0,"aria-hidden":"true"},s),{default:b(()=>[C(t.$slots,"default")]),_:3},16)):W("v-if",!0)}}),na=ra,oa=D({inheritAttrs:!1,__name:"SelectItemText",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(i){const s=i,a=Q(),t=Se(),n=Ue(),{forwardRef:u,currentElement:m}=be(),S=j(()=>({value:n.value,disabled:n.disabled.value,textContent:m.value?.textContent??n.value?.toString()??""}));return le(()=>{m.value&&(n.onItemTextChange(m.value),t.itemTextRefCallback(m.value,n.value,n.disabled.value),a.onOptionAdd(S.value))}),ot(()=>{a.onOptionRemove(S.value)}),(v,y)=>(o(),_(e(Z),E({id:e(n).textId,ref:e(u)},{...s,...v.$attrs}),{default:b(()=>[C(v.$slots,"default")]),_:3},16,["id"]))}}),sa=oa,ua=D({__name:"SelectLabel",props:{for:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(i){const s=i,a=Qt({id:""});return(t,n)=>(o(),_(e(Z),E(s,{id:e(a).id}),{default:b(()=>[C(t.$slots,"default")]),_:3},16,["id"]))}}),da=ua,ca=D({__name:"SelectPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(i){const s=i;return(a,t)=>(o(),_(e(st),_e(ke(s)),{default:b(()=>[C(a.$slots,"default")]),_:3},16))}}),pa=ca,fa=D({__name:"SelectSeparator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(i){const s=i;return(a,t)=>(o(),_(e(Z),E({"aria-hidden":"true"},s),{default:b(()=>[C(a.$slots,"default")]),_:3},16))}}),ga=fa,ma=D({__name:"SelectTrigger",props:{disabled:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(i){const s=i,a=Q(),{forwardRef:t,currentElement:n}=be(),u=j(()=>a.disabled?.value||s.disabled);a.contentId||=Ae(void 0,"reka-select-content"),le(()=>{a.onTriggerChange(n.value)});const{getItems:m}=pe(),{search:S,handleTypeaheadSearch:v,resetTypeahead:y}=We();function B(){u.value||(a.onOpenChange(!0),y())}function w(x){B(),a.triggerPointerDownPosRef.value={x:Math.round(x.pageX),y:Math.round(x.pageY)}}return(x,I)=>(o(),_(e(It),{"as-child":"",reference:x.reference},{default:b(()=>[M(e(Z),{ref:e(t),role:"combobox",type:x.as==="button"?"button":void 0,"aria-controls":e(a).contentId,"aria-expanded":e(a).open.value||!1,"aria-required":e(a).required?.value,"aria-autocomplete":"none",disabled:u.value,dir:e(a)?.dir.value,"data-state":e(a)?.open.value?"open":"closed","data-disabled":u.value?"":void 0,"data-placeholder":e(At)(e(a).modelValue?.value)?"":void 0,"as-child":x.asChild,as:x.as,onClick:I[0]||(I[0]=c=>{c?.currentTarget?.focus()}),onPointerdown:I[1]||(I[1]=c=>{if(c.pointerType==="touch")return c.preventDefault();const $=c.target;$.hasPointerCapture(c.pointerId)&&$.releasePointerCapture(c.pointerId),c.button===0&&c.ctrlKey===!1&&(w(c),c.preventDefault())}),onPointerup:I[2]||(I[2]=de(c=>{c.pointerType==="touch"&&w(c)},["prevent"])),onKeydown:I[3]||(I[3]=c=>{const $=e(S)!=="";!(c.ctrlKey||c.altKey||c.metaKey)&&c.key.length===1&&$&&c.key===" "||(e(v)(c.key,e(m)()),e(zt).includes(c.key)&&(B(),c.preventDefault()))})},{default:b(()=>[C(x.$slots,"default")]),_:3},8,["type","aria-controls","aria-expanded","aria-required","disabled","dir","data-state","data-disabled","data-placeholder","as-child","as"])]),_:3},8,["reference"]))}}),va=ma;const ya={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",viewport:"relative divide-y divide-default 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"},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"}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus:ring-success"},{color:"info",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus:ring-info"},{color:"warning",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus:ring-warning"},{color:"error",variant:["outline","subtle"],class:"focus:ring-2 focus:ring-inset focus: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:ring-2 focus:ring-inset focus: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"}},Ba=Object.assign({inheritAttrs:!1},{__name:"USelect",props:{id:{type:String,required:!1},placeholder:{type:String,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,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},valueKey:{type:null,required:!1,default:"value"},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},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},autocomplete:{type:String,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},required:{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}},emits:["update:open","change","blur","focus","update:modelValue"],setup(i,{expose:s,emit:a}){const t=i,n=a,u=ut(),m=dt(),S=Ke(ct(t,"open","defaultOpen","disabled","autocomplete","required","multiple"),n),v=pt(ne(()=>t.portal)),y=ne(()=>Oe(t.content,{side:"bottom",sideOffset:8,collisionPadding:8,position:"popper"})),B=ne(()=>t.arrow),{emitFormChange:w,emitFormInput:x,emitFormBlur:I,emitFormFocus:c,size:$,color:A,id:G,name:V,highlight:k,disabled:r,ariaAttrs:h}=ft(t),{orientation:d,size:f}=gt(t),{isLeading:q,isTrailing:T,leadingIconName:P,trailingIconName:X}=mt(ne(()=>Oe(t,{trailingIcon:m.ui.icons.chevronDown}))),fe=j(()=>f.value||$.value),p=j(()=>$e({extend:$e(ya),...m.ui?.select||{}})({color:A.value,variant:t.variant,size:fe?.value,loading:t.loading,highlight:k.value,leading:q.value||!!t.avatar||!!u.leading,trailing:T.value||!!u.trailing,fieldGroup:d.value})),ge=j(()=>t.items?.length?vt(t.items)?t.items:[t.items]:[]),ie=j(()=>ge.value.flatMap(g=>g));function xe(g){if(t.multiple&&Array.isArray(g)){const H=g.map(F=>Re(ie.value,F,{labelKey:t.labelKey,valueKey:t.valueKey})).filter(F=>F!=null&&F!=="");return H.length>0?H.join(", "):void 0}return Re(ie.value,g,{labelKey:t.labelKey,valueKey:t.valueKey})}const ee=yt("triggerRef");function qe(){t.autofocus&&ee.value?.$el?.focus({focusVisible:!0})}le(()=>{setTimeout(()=>{qe()},t.autofocusDelay)});function Ce(g){t.modelModifiers?.trim&&(g=g?.trim()??null),t.modelModifiers?.number&&(g=bt(g)),t.modelModifiers?.nullable&&(g??=null),t.modelModifiers?.optional&&(g??=void 0);const H=new Event("change",{target:{value:g}});n("change",H),w(),x()}function te(g){if(g){const H=new FocusEvent("focus");n("focus",H),c()}else{const H=new FocusEvent("blur");n("blur",H),I()}}function L(g){return typeof g=="object"&&g!==null}return s({triggerRef:ne(()=>ee.value?.$el)}),(g,H)=>(o(),_(e(Ot),E({name:e(V)},e(S),{autocomplete:i.autocomplete,disabled:e(r),"default-value":i.defaultValue,"model-value":i.modelValue,"onUpdate:modelValue":Ce,"onUpdate:open":te}),{default:b(({modelValue:F,open:re})=>[M(e(va),E({id:e(G),ref_key:"triggerRef",ref:ee,"data-slot":"base",class:p.value.base({class:[t.ui?.base,t.class]})},{...g.$attrs,...e(h)}),{default:b(()=>[e(q)||i.avatar||u.leading?(o(),R("span",{key:0,"data-slot":"leading",class:O(p.value.leading({class:t.ui?.leading}))},[C(g.$slots,"leading",{modelValue:F,open:re,ui:p.value},()=>[e(q)&&e(P)?(o(),_(me,{key:0,name:e(P),"data-slot":"leadingIcon",class:O(p.value.leadingIcon({class:t.ui?.leadingIcon}))},null,8,["name","class"])):i.avatar?(o(),_(De,E({key:1,size:t.ui?.itemLeadingAvatarSize||p.value.itemLeadingAvatarSize()},i.avatar,{"data-slot":"itemLeadingAvatar",class:p.value.itemLeadingAvatar({class:t.ui?.itemLeadingAvatar})}),null,16,["size","class"])):W("",!0)])],2)):W("",!0),C(g.$slots,"default",{modelValue:F,open:re,ui:p.value},()=>[(o(!0),R(ae,null,ve([xe(F)],J=>(o(),R(ae,{key:J},[J!=null?(o(),R("span",{key:0,"data-slot":"value",class:O(p.value.value({class:t.ui?.value}))},oe(J),3)):(o(),R("span",{key:1,"data-slot":"placeholder",class:O(p.value.placeholder({class:t.ui?.placeholder}))},oe(i.placeholder??" "),3))],64))),128))]),e(T)||u.trailing?(o(),R("span",{key:1,"data-slot":"trailing",class:O(p.value.trailing({class:t.ui?.trailing}))},[C(g.$slots,"trailing",{modelValue:F,open:re,ui:p.value},()=>[e(X)?(o(),_(me,{key:0,name:e(X),"data-slot":"trailingIcon",class:O(p.value.trailingIcon({class:t.ui?.trailingIcon}))},null,8,["name","class"])):W("",!0)])],2)):W("",!0)]),_:2},1040,["id","class"]),M(e(pa),_e(ke(e(v))),{default:b(()=>[M(e(Zt),E({"data-slot":"content",class:p.value.content({class:t.ui?.content})},y.value),{default:b(()=>[C(g.$slots,"content-top"),ye("div",{role:"presentation","data-slot":"viewport",class:O(p.value.viewport({class:t.ui?.viewport}))},[(o(!0),R(ae,null,ve(ge.value,(J,K)=>(o(),_(e(ta),{key:`group-${K}`,"data-slot":"group",class:O(p.value.group({class:t.ui?.group}))},{default:b(()=>[(o(!0),R(ae,null,ve(J,(l,N)=>(o(),R(ae,{key:`group-${K}-${N}`},[L(l)&&l.type==="label"?(o(),_(e(da),{key:0,"data-slot":"label",class:O(p.value.label({class:[t.ui?.label,l.ui?.label,l.class]}))},{default:b(()=>[Be(oe(e(se)(l,t.labelKey)),1)]),_:2},1032,["class"])):L(l)&&l.type==="separator"?(o(),_(e(ga),{key:1,"data-slot":"separator",class:O(p.value.separator({class:[t.ui?.separator,l.ui?.separator,l.class]}))},null,8,["class"])):(o(),_(e(ia),{key:2,"data-slot":"item",class:O(p.value.item({class:[t.ui?.item,L(l)&&l.ui?.item,L(l)&&l.class]})),disabled:L(l)&&l.disabled,value:L(l)?e(se)(l,t.valueKey):l,onSelect:Y=>L(l)&&l.onSelect?.(Y)},{default:b(()=>[C(g.$slots,"item",{item:l,index:N,ui:p.value},()=>[C(g.$slots,"item-leading",{item:l,index:N,ui:p.value},()=>[L(l)&&l.icon?(o(),_(me,{key:0,name:l.icon,"data-slot":"itemLeadingIcon",class:O(p.value.itemLeadingIcon({class:[t.ui?.itemLeadingIcon,l.ui?.itemLeadingIcon]}))},null,8,["name","class"])):L(l)&&l.avatar?(o(),_(De,E({key:1,size:l.ui?.itemLeadingAvatarSize||t.ui?.itemLeadingAvatarSize||p.value.itemLeadingAvatarSize()},{ref_for:!0},l.avatar,{"data-slot":"itemLeadingAvatar",class:p.value.itemLeadingAvatar({class:[t.ui?.itemLeadingAvatar,l.ui?.itemLeadingAvatar]})}),null,16,["size","class"])):L(l)&&l.chip?(o(),_(ht,E({key:2,size:l.ui?.itemLeadingChipSize||t.ui?.itemLeadingChipSize||p.value.itemLeadingChipSize(),inset:"",standalone:""},{ref_for:!0},l.chip,{"data-slot":"itemLeadingChip",class:p.value.itemLeadingChip({class:[t.ui?.itemLeadingChip,l.ui?.itemLeadingChip]})}),null,16,["size","class"])):W("",!0)]),ye("span",{"data-slot":"itemWrapper",class:O(p.value.itemWrapper({class:[t.ui?.itemWrapper,L(l)&&l.ui?.itemWrapper]}))},[M(e(sa),{"data-slot":"itemLabel",class:O(p.value.itemLabel({class:[t.ui?.itemLabel,L(l)&&l.ui?.itemLabel]}))},{default:b(()=>[C(g.$slots,"item-label",{item:l,index:N},()=>[Be(oe(L(l)?e(se)(l,t.labelKey):l),1)])]),_:2},1032,["class"]),L(l)&&(e(se)(l,t.descriptionKey)||u["item-description"])?(o(),R("span",{key:0,"data-slot":"itemDescription",class:O(p.value.itemDescription({class:[t.ui?.itemDescription,L(l)&&l.ui?.itemDescription]}))},[C(g.$slots,"item-description",{item:l,index:N},()=>[Be(oe(e(se)(l,t.descriptionKey)),1)])],2)):W("",!0)],2),ye("span",{"data-slot":"itemTrailing",class:O(p.value.itemTrailing({class:[t.ui?.itemTrailing,L(l)&&l.ui?.itemTrailing]}))},[C(g.$slots,"item-trailing",{item:l,index:N,ui:p.value}),M(e(na),{"as-child":""},{default:b(()=>[M(me,{name:i.selectedIcon||e(m).ui.icons.check,"data-slot":"itemTrailingIcon",class:O(p.value.itemTrailingIcon({class:[t.ui?.itemTrailingIcon,L(l)&&l.ui?.itemTrailingIcon]}))},null,8,["name","class"])]),_:2},1024)],2)])]),_:2},1032,["class","disabled","value","onSelect"]))],64))),128))]),_:2},1032,["class"]))),128))],2),C(g.$slots,"content-bottom"),i.arrow?(o(),_(e(jt),E({key:0},B.value,{"data-slot":"arrow",class:p.value.arrow({class:t.ui?.arrow})}),null,16,["class"])):W("",!0)]),_:3},16,["class"])]),_:3},16)]),_:3},16,["name","autocomplete","disabled","default-value","model-value"]))}});export{Ba as _};