orcaq 1.1.7 → 1.1.8

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 (173) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/-7uW7YTy.js +1 -0
  3. package/.output/public/_nuxt/{DzjHXopz.js → 5450EsIE.js} +1 -1
  4. package/.output/public/_nuxt/6mVUr42b.js +1 -0
  5. package/.output/public/_nuxt/7H5y5euK.js +1 -0
  6. package/.output/public/_nuxt/7iCr9_qw.js +26 -0
  7. package/.output/public/_nuxt/{CJnTtXrv.js → B0gkARnK.js} +1 -1
  8. package/.output/public/_nuxt/B21nC2NZ.js +1 -0
  9. package/.output/public/_nuxt/B232GDut.js +2 -0
  10. package/.output/public/_nuxt/{DtgJAz2h.js → B6N_D8QI.js} +1 -1
  11. package/.output/public/_nuxt/B7C8fo37.js +1 -0
  12. package/.output/public/_nuxt/BC82eJHt.js +1 -0
  13. package/.output/public/_nuxt/BHr4_sbs.js +9 -0
  14. package/.output/public/_nuxt/{DSOwr8Hs.js → BJvJ0Hlu.js} +4 -4
  15. package/.output/public/_nuxt/BK-6CJ0A.js +1 -0
  16. package/.output/public/_nuxt/BMVgfiQu.js +1 -0
  17. package/.output/public/_nuxt/BNh4NY7v.js +1 -0
  18. package/.output/public/_nuxt/{DuKway_J.js → BO3FEgXG.js} +1 -1
  19. package/.output/public/_nuxt/BQm1mt0O.js +1 -0
  20. package/.output/public/_nuxt/BRCvv3op.js +1 -0
  21. package/.output/public/_nuxt/{Cym7bWgs.js → BRWis86L.js} +1 -1
  22. package/.output/public/_nuxt/{CG4v011f.js → BRzWRTTF.js} +1 -1
  23. package/.output/public/_nuxt/{BRVpLa1E.js → BWTTrGtY.js} +2 -2
  24. package/.output/public/_nuxt/{CczQKYUP.js → BXMKgn-J.js} +1 -1
  25. package/.output/public/_nuxt/{C7A87LE3.js → BYaoWfSN.js} +1 -1
  26. package/.output/public/_nuxt/{Z5g5B4NJ.js → BalNYDR1.js} +1 -1
  27. package/.output/public/_nuxt/{DQdL5Jcl.js → BmfnP4qD.js} +1 -1
  28. package/.output/public/_nuxt/Bn6_QGSK.js +1 -0
  29. package/.output/public/_nuxt/{RTN5rY4m.js → BsCPQnkm.js} +1 -1
  30. package/.output/public/_nuxt/{39ZZCZCn.js → Bu6ybm3Z.js} +1 -1
  31. package/.output/public/_nuxt/{2TwRWQjG.js → BuTCm7Bo.js} +1 -1
  32. package/.output/public/_nuxt/BuzCyLCh.js +1 -0
  33. package/.output/public/_nuxt/{BCm7jnPt.js → BzNEuLKx.js} +1 -1
  34. package/.output/public/_nuxt/{DyFXtlg0.js → BzNNFvTW.js} +1 -1
  35. package/.output/public/_nuxt/{nrlEwpIH.js → BzqjH2-H.js} +1 -1
  36. package/.output/public/_nuxt/{D0oaRUYx.js → C-e53AuW.js} +1 -1
  37. package/.output/public/_nuxt/C0jXhwNq.js +1 -0
  38. package/.output/public/_nuxt/C6K-C4_d.js +1 -0
  39. package/.output/public/_nuxt/{D7uoAo-G.js → C6teO48Y.js} +5 -5
  40. package/.output/public/_nuxt/{DUvUg_V7.js → C874itvn.js} +1 -1
  41. package/.output/public/_nuxt/C8ZJ2pm_.js +1 -0
  42. package/.output/public/_nuxt/CA3O4M9L.js +1 -0
  43. package/.output/public/_nuxt/{DStg2VwN.js → CAjVwGyz.js} +1 -1
  44. package/.output/public/_nuxt/{B41tp0B8.js → CCC5u9Ni.js} +1 -1
  45. package/.output/public/_nuxt/{3vYvhEat.js → CCCJ2fw7.js} +1 -1
  46. package/.output/public/_nuxt/{vGkKA7iH.js → CFi6G8Aj.js} +2 -2
  47. package/.output/public/_nuxt/CKlMKmo6.js +1 -0
  48. package/.output/public/_nuxt/{BvD9dW-2.js → CMDq7o88.js} +1 -1
  49. package/.output/public/_nuxt/CMI-3q_e.js +1 -0
  50. package/.output/public/_nuxt/{D_fdC3mJ.js → CMnjMfEQ.js} +1 -1
  51. package/.output/public/_nuxt/{DTlu-CJn.js → CQFANjzf.js} +1 -1
  52. package/.output/public/_nuxt/{DEjwIQuc.js → CU5cwnUW.js} +1 -1
  53. package/.output/public/_nuxt/{BO-QgaRL.js → CXQ2zrsE.js} +1 -1
  54. package/.output/public/_nuxt/{BLEKzUmC.js → CXbrqQhC.js} +1 -1
  55. package/.output/public/_nuxt/CZXyfpHW.js +1 -0
  56. package/.output/public/_nuxt/CZgTP5wX.js +1 -0
  57. package/.output/public/_nuxt/{BhT0iBlH.js → Cd_fVKDw.js} +1 -1
  58. package/.output/public/_nuxt/CeXnSKvd.js +1 -0
  59. package/.output/public/_nuxt/Chw5tFzx.js +1 -0
  60. package/.output/public/_nuxt/CkLSGVwV.js +1 -0
  61. package/.output/public/_nuxt/Cqk0ImDE.js +1 -0
  62. package/.output/public/_nuxt/{Ch-A9iSC.js → CuXTA7ZW.js} +1 -1
  63. package/.output/public/_nuxt/Cv9v5fHN.js +1 -0
  64. package/.output/public/_nuxt/{LUfaevBS.js → CvbYm0uB.js} +1 -1
  65. package/.output/public/_nuxt/{BV4g1sVY.js → Cw1HIv3s.js} +1 -1
  66. package/.output/public/_nuxt/{DxF9DsEl.js → CyEOtFwE.js} +1 -1
  67. package/.output/public/_nuxt/{Clm3Z8VL.js → CyKRjZZo.js} +1 -1
  68. package/.output/public/_nuxt/{Cj9tYr3P.js → D4DMGxvZ.js} +1 -1
  69. package/.output/public/_nuxt/{BNnChlxR.js → D5GonnbJ.js} +1 -1
  70. package/.output/public/_nuxt/D5Oboajo.js +1 -0
  71. package/.output/public/_nuxt/D8egDyEO.js +1 -0
  72. package/.output/public/_nuxt/DBSV6YXN.js +1 -0
  73. package/.output/public/_nuxt/{gWmEw6BT.js → DCewvWOu.js} +1 -1
  74. package/.output/public/_nuxt/{BG_B-fo0.js → DG9CsZCx.js} +1 -1
  75. package/.output/public/_nuxt/{BOVFFCPB.js → DH2V7e8U.js} +1 -1
  76. package/.output/public/_nuxt/{DcXAnOS1.js → DHXwq7wT.js} +1 -1
  77. package/.output/public/_nuxt/DJXrgohw.js +2 -0
  78. package/.output/public/_nuxt/{CxZK-Vs6.js → DQRyK9Io.js} +1 -1
  79. package/.output/public/_nuxt/{B-u0WX5Q.js → DXVrM3CN.js} +1 -1
  80. package/.output/public/_nuxt/{XVZ0obUR.js → DZ4xLzJg.js} +1 -1
  81. package/.output/public/_nuxt/DZIoL4RO.js +1 -0
  82. package/.output/public/_nuxt/D_kY6P5P.js +1 -0
  83. package/.output/public/_nuxt/{DzN4YRfa.js → DgxTwFGe.js} +2 -2
  84. package/.output/public/_nuxt/DkX74xDd.js +1 -0
  85. package/.output/public/_nuxt/{DzaPC1WB.js → DmnufEYq.js} +1 -1
  86. package/.output/public/_nuxt/{CCk2r9DD.js → Dopm1f4X.js} +1 -1
  87. package/.output/public/_nuxt/{jJeqAxmP.js → Dpkaavgs.js} +1 -1
  88. package/.output/public/_nuxt/DpsqSAMo.js +20 -0
  89. package/.output/public/_nuxt/{CRDIOG8r.js → DrkGD_bQ.js} +1 -1
  90. package/.output/public/_nuxt/{DLIUYAz9.js → Dtry_3Qa.js} +1 -1
  91. package/.output/public/_nuxt/DwPmcz47.js +1 -0
  92. package/.output/public/_nuxt/DyjsVMbv.js +1 -0
  93. package/.output/public/_nuxt/{CBgbjsPd.js → FmHWbXNk.js} +1 -1
  94. package/.output/public/_nuxt/{CWGzL6OE.js → JxgekUqn.js} +1 -1
  95. package/.output/public/_nuxt/KoGK2wLb.js +1 -0
  96. package/.output/public/_nuxt/LU_a7qLd.js +1 -0
  97. package/.output/public/_nuxt/{1VXrIDkr.js → LxqkguPP.js} +1 -1
  98. package/.output/public/_nuxt/Q8x88Gcd.js +1 -0
  99. package/.output/public/_nuxt/{RFRrMFyH.js → R04uZjs6.js} +1 -1
  100. package/.output/public/_nuxt/So0hX8V0.js +31 -0
  101. package/.output/public/_nuxt/WGDY9i_Q.js +1 -0
  102. package/.output/public/_nuxt/{BZQUF1W4.js → WZQ8mcv9.js} +1 -1
  103. package/.output/public/_nuxt/{CrwM3gOU.js → XjywAggc.js} +1 -1
  104. package/.output/public/_nuxt/{_fileId_.DxhkUVGK.css → _fileId_.CiauI_x3.css} +1 -1
  105. package/.output/public/_nuxt/{z1xPtaLw.js → _uLivI44.js} +1 -1
  106. package/.output/public/_nuxt/builds/latest.json +1 -1
  107. package/.output/public/_nuxt/builds/meta/30582efd-125a-4f88-bd89-20a7b2ba8697.json +1 -0
  108. package/.output/public/_nuxt/{DRuCf0Sx.js → eQskTKIU.js} +1 -1
  109. package/.output/public/_nuxt/ecWNT6PZ.js +1 -0
  110. package/.output/public/_nuxt/entry.BcHy7sxf.css +1 -0
  111. package/.output/public/_nuxt/{BGAd-CMD.js → f6XRRKUb.js} +1 -1
  112. package/.output/public/_nuxt/jtwYTq7X.js +52 -0
  113. package/.output/public/_nuxt/{Bw-4PosZ.js → mcYTISF7.js} +1 -1
  114. package/.output/public/_nuxt/mcfKrWU-.js +1 -0
  115. package/.output/public/_nuxt/{CB56S0b2.js → soHTUlpn.js} +3 -3
  116. package/.output/public/_nuxt/tc7vkD0J.js +3 -0
  117. package/.output/public/_nuxt/vEHvfalB.js +53 -0
  118. package/.output/public/_nuxt/vP25tZUh.js +2 -0
  119. package/.output/public/_nuxt/{CpkrwN3Q.js → zndqWf9s.js} +1 -1
  120. package/.output/server/chunks/_/tables.factory.mjs +1 -1
  121. package/.output/server/chunks/build/client.manifest.mjs +794 -730
  122. package/.output/server/chunks/build/client.manifest.mjs.map +1 -1
  123. package/.output/server/chunks/nitro/nitro.mjs +676 -648
  124. package/.output/server/package.json +1 -1
  125. package/package.json +1 -1
  126. package/.output/public/_nuxt/1fIGBJPQ.js +0 -1
  127. package/.output/public/_nuxt/1kY3DHv7.js +0 -1
  128. package/.output/public/_nuxt/9bnMBg54.js +0 -1
  129. package/.output/public/_nuxt/BFMjnjgH.js +0 -1
  130. package/.output/public/_nuxt/BN2mQ8OV.js +0 -20
  131. package/.output/public/_nuxt/BNyWhB4W.js +0 -1
  132. package/.output/public/_nuxt/BXziI6Bt.js +0 -3
  133. package/.output/public/_nuxt/BZmEvFAZ.js +0 -28
  134. package/.output/public/_nuxt/Ba_fqsW2.js +0 -1
  135. package/.output/public/_nuxt/BbzZxPNQ.js +0 -1
  136. package/.output/public/_nuxt/Bhm1GL_M.js +0 -1
  137. package/.output/public/_nuxt/BiSZmDoN.js +0 -1
  138. package/.output/public/_nuxt/BjK8Fug8.js +0 -1
  139. package/.output/public/_nuxt/BjpSpz5C.js +0 -1
  140. package/.output/public/_nuxt/BkqB6n0T.js +0 -1
  141. package/.output/public/_nuxt/BoPjUGS6.js +0 -1
  142. package/.output/public/_nuxt/BtwwqY0e.js +0 -1
  143. package/.output/public/_nuxt/C0l_59dE.js +0 -1
  144. package/.output/public/_nuxt/C1TOiVRQ.js +0 -9
  145. package/.output/public/_nuxt/C80Zs8U0.js +0 -1
  146. package/.output/public/_nuxt/CFZerEKx.js +0 -2
  147. package/.output/public/_nuxt/CSPqdI4x.js +0 -1
  148. package/.output/public/_nuxt/CTYqoFvv.js +0 -1
  149. package/.output/public/_nuxt/CYJEOEaU.js +0 -1
  150. package/.output/public/_nuxt/CYu-xp_f.js +0 -1
  151. package/.output/public/_nuxt/CZvnl0uO.js +0 -52
  152. package/.output/public/_nuxt/CadjlDLt.js +0 -1
  153. package/.output/public/_nuxt/CeXr_3vU.js +0 -2
  154. package/.output/public/_nuxt/Culm7V2R.js +0 -53
  155. package/.output/public/_nuxt/CzBFxx8v.js +0 -1
  156. package/.output/public/_nuxt/D8KJQqug.js +0 -1
  157. package/.output/public/_nuxt/D8Z5BXgG.js +0 -26
  158. package/.output/public/_nuxt/DDK9-_jm.js +0 -1
  159. package/.output/public/_nuxt/DDQU7vSH.js +0 -1
  160. package/.output/public/_nuxt/DSEkO8kW.js +0 -1
  161. package/.output/public/_nuxt/Da1F0IxL.js +0 -1
  162. package/.output/public/_nuxt/DdtQIDaq.js +0 -1
  163. package/.output/public/_nuxt/Dfz8k_Rn.js +0 -1
  164. package/.output/public/_nuxt/DitYzGT4.js +0 -1
  165. package/.output/public/_nuxt/Djh3G2Nf.js +0 -1
  166. package/.output/public/_nuxt/DmWFeTaU.js +0 -1
  167. package/.output/public/_nuxt/_ltJfz1p.js +0 -1
  168. package/.output/public/_nuxt/builds/meta/1cbed594-12e2-48e6-bea9-7a9159c3c1d3.json +0 -1
  169. package/.output/public/_nuxt/dkyHOJLf.js +0 -1
  170. package/.output/public/_nuxt/entry.D1DMaixs.css +0 -1
  171. package/.output/public/_nuxt/ixgiI20S.js +0 -1
  172. package/.output/public/_nuxt/lisFd8W1.js +0 -2
  173. package/.output/public/_nuxt/uHyBIwWw.js +0 -1
@@ -1,5 +1,5 @@
1
1
  {
2
- "date": "2026-05-26T17:17:45.738Z",
2
+ "date": "2026-06-03T02:53:16.655Z",
3
3
  "preset": "node-server",
4
4
  "framework": {
5
5
  "name": "nuxt",
@@ -0,0 +1 @@
1
+ import{s as a,c as s,a as e,C as t}from"./R04uZjs6.js";import{_ as i}from"./BJvJ0Hlu.js";import"./CMnjMfEQ.js";import"./JxgekUqn.js";import"./BsCPQnkm.js";import"./BO3FEgXG.js";import"./C6teO48Y.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};
@@ -1 +1 @@
1
- import{s as R,a as W,S as N}from"./Cym7bWgs.js";import{_ as f,c as t,d as H,l as S,e as P,k as z,a9 as _,aa as U,a6 as C,u as F}from"./DSOwr8Hs.js";import{G as O}from"./qsFoMdT2.js";import{l as J}from"./CQb_mUBo.js";import"./RTN5rY4m.js";import"./DuKway_J.js";import"./D7uoAo-G.js";var X=f(e=>e.append("circle").attr("class","start-state").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit).attr("cy",t().state.padding+t().state.sizeUnit),"drawStartState"),D=f(e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t().state.textHeight).attr("class","divider").attr("x2",t().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),Y=f((e,i)=>{const d=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+2*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),c=d.node().getBBox();return e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",c.width+2*t().state.padding).attr("height",c.height+2*t().state.padding).attr("rx",t().state.radius),d},"drawSimpleState"),I=f((e,i)=>{const d=f(function(g,B,m){const E=g.append("tspan").attr("x",2*t().state.padding).text(B);m||E.attr("dy",t().state.textHeight)},"addTspan"),n=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+1.3*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),l=n.height,x=e.append("text").attr("x",t().state.padding).attr("y",l+t().state.padding*.4+t().state.dividerMargin+t().state.textHeight).attr("class","state-description");let a=!0,s=!0;i.descriptions.forEach(function(g){a||(d(x,g,s),s=!1),a=!1});const w=e.append("line").attr("x1",t().state.padding).attr("y1",t().state.padding+l+t().state.dividerMargin/2).attr("y2",t().state.padding+l+t().state.dividerMargin/2).attr("class","descr-divider"),p=x.node().getBBox(),o=Math.max(p.width,n.width);return w.attr("x2",o+3*t().state.padding),e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",o+2*t().state.padding).attr("height",p.height+l+2*t().state.padding).attr("rx",t().state.radius),e},"drawDescrState"),$=f((e,i,d)=>{const c=t().state.padding,n=2*t().state.padding,l=e.node().getBBox(),x=l.width,a=l.x,s=e.append("text").attr("x",0).attr("y",t().state.titleShift).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),p=s.node().getBBox().width+n;let o=Math.max(p,x);o===x&&(o=o+n);let g;const B=e.node().getBBox();i.doc,g=a-c,p>x&&(g=(x-o)/2+c),Math.abs(a-B.x)<c&&p>x&&(g=a-(p-x)/2);const m=1-t().state.textHeight;return e.insert("rect",":first-child").attr("x",g).attr("y",m).attr("class",d?"alt-composit":"composit").attr("width",o).attr("height",B.height+t().state.textHeight+t().state.titleShift+1).attr("rx","0"),s.attr("x",g+c),p<=x&&s.attr("x",a+(o-n)/2-p/2+c),e.insert("rect",":first-child").attr("x",g).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",o).attr("height",t().state.textHeight*3).attr("rx",t().state.radius),e.insert("rect",":first-child").attr("x",g).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",o).attr("height",B.height+3+2*t().state.textHeight).attr("rx",t().state.radius),e},"addTitleAndBox"),q=f(e=>(e.append("circle").attr("class","end-state-outer").attr("r",t().state.sizeUnit+t().state.miniPadding).attr("cx",t().state.padding+t().state.sizeUnit+t().state.miniPadding).attr("cy",t().state.padding+t().state.sizeUnit+t().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit+2).attr("cy",t().state.padding+t().state.sizeUnit+2)),"drawEndState"),Z=f((e,i)=>{let d=t().state.forkWidth,c=t().state.forkHeight;if(i.parentId){let n=d;d=c,c=n}return e.append("rect").style("stroke","black").style("fill","black").attr("width",d).attr("height",c).attr("x",t().state.padding).attr("y",t().state.padding)},"drawForkJoinState"),j=f((e,i,d,c)=>{let n=0;const l=c.append("text");l.style("text-anchor","start"),l.attr("class","noteText");let x=e.replace(/\r\n/g,"<br/>");x=x.replace(/\n/g,"<br/>");const a=x.split(z.lineBreakRegex);let s=1.25*t().state.noteMargin;for(const w of a){const p=w.trim();if(p.length>0){const o=l.append("tspan");if(o.text(p),s===0){const g=o.node().getBBox();s+=g.height}n+=s,o.attr("x",i+t().state.noteMargin),o.attr("y",d+n+1.25*t().state.noteMargin)}}return{textWidth:l.node().getBBox().width,textHeight:n}},"_drawLongText"),K=f((e,i)=>{i.attr("class","state-note");const d=i.append("rect").attr("x",0).attr("y",t().state.padding),c=i.append("g"),{textWidth:n,textHeight:l}=j(e,0,0,c);return d.attr("height",l+2*t().state.noteMargin),d.attr("width",n+t().state.noteMargin*2),d},"drawNote"),L=f(function(e,i){const d=i.id,c={id:d,label:i.id,width:0,height:0},n=e.append("g").attr("id",d).attr("class","stateGroup");i.type==="start"&&X(n),i.type==="end"&&q(n),(i.type==="fork"||i.type==="join")&&Z(n,i),i.type==="note"&&K(i.note.text,n),i.type==="divider"&&D(n),i.type==="default"&&i.descriptions.length===0&&Y(n,i),i.type==="default"&&i.descriptions.length>0&&I(n,i);const l=n.node().getBBox();return c.width=l.width+2*t().state.padding,c.height=l.height+2*t().state.padding,c},"drawState"),A=0,Q=f(function(e,i,d){const c=f(function(s){switch(s){case N.relationType.AGGREGATION:return"aggregation";case N.relationType.EXTENSION:return"extension";case N.relationType.COMPOSITION:return"composition";case N.relationType.DEPENDENCY:return"dependency"}},"getRelationType");i.points=i.points.filter(s=>!Number.isNaN(s.y));const n=i.points,l=_().x(function(s){return s.x}).y(function(s){return s.y}).curve(U),x=e.append("path").attr("d",l(n)).attr("id","edge"+A).attr("class","transition");let a="";if(t().state.arrowMarkerAbsolute&&(a=C(!0)),x.attr("marker-end","url("+a+"#"+c(N.relationType.DEPENDENCY)+"End)"),d.title!==void 0){const s=e.append("g").attr("class","stateLabel"),{x:w,y:p}=F.calcLabelPosition(i.points),o=z.getRows(d.title);let g=0;const B=[];let m=0,E=0;for(let u=0;u<=o.length;u++){const h=s.append("text").attr("text-anchor","middle").text(o[u]).attr("x",w).attr("y",p+g),y=h.node().getBBox();m=Math.max(m,y.width),E=Math.min(E,y.x),S.info(y.x,w,p+g),g===0&&(g=h.node().getBBox().height,S.info("Title height",g,p)),B.push(h)}let k=g*o.length;if(o.length>1){const u=(o.length-1)*g*.5;B.forEach((h,y)=>h.attr("y",p+y*g-u)),k=g*o.length}const r=s.node().getBBox();s.insert("rect",":first-child").attr("class","box").attr("x",w-m/2-t().state.padding/2).attr("y",p-k/2-t().state.padding/2-3.5).attr("width",m+t().state.padding).attr("height",k+t().state.padding),S.info(r)}A++},"drawEdge"),b,T={},V=f(function(){},"setConf"),tt=f(function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),et=f(function(e,i,d,c){b=t().state;const n=t().securityLevel;let l;n==="sandbox"&&(l=H("#i"+i));const x=n==="sandbox"?H(l.nodes()[0].contentDocument.body):H("body"),a=n==="sandbox"?l.nodes()[0].contentDocument:document;S.debug("Rendering diagram "+e);const s=x.select(`[id='${i}']`);tt(s);const w=c.db.getRootDoc();G(w,s,void 0,!1,x,a,c);const p=b.padding,o=s.node().getBBox(),g=o.width+p*2,B=o.height+p*2,m=g*1.75;P(s,B,m,b.useMaxWidth),s.attr("viewBox",`${o.x-b.padding} ${o.y-b.padding} `+g+" "+B)},"draw"),at=f(e=>e?e.length*b.fontSizeFactor:1,"getLabelWidth"),G=f((e,i,d,c,n,l,x)=>{const a=new O({compound:!0,multigraph:!0});let s,w=!0;for(s=0;s<e.length;s++)if(e[s].stmt==="relation"){w=!1;break}d?a.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:w?1:b.edgeLengthFactor,nodeSep:w?1:50,isMultiGraph:!0}):a.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:w?1:b.edgeLengthFactor,nodeSep:w?1:50,ranker:"tight-tree",isMultiGraph:!0}),a.setDefaultEdgeLabel(function(){return{}});const p=x.db.getStates(),o=x.db.getRelations(),g=Object.keys(p);for(const r of g){const u=p[r];d&&(u.parentId=d);let h;if(u.doc){let y=i.append("g").attr("id",u.id).attr("class","stateGroup");h=G(u.doc,y,u.id,!c,n,l,x);{y=$(y,u,c);let v=y.node().getBBox();h.width=v.width,h.height=v.height+b.padding/2,T[u.id]={y:b.compositTitleSize}}}else h=L(i,u,a);if(u.note){const y={descriptions:[],id:u.id+"-note",note:u.note,type:"note"},v=L(i,y,a);u.note.position==="left of"?(a.setNode(h.id+"-note",v),a.setNode(h.id,h)):(a.setNode(h.id,h),a.setNode(h.id+"-note",v)),a.setParent(h.id,h.id+"-group"),a.setParent(h.id+"-note",h.id+"-group")}else a.setNode(h.id,h)}S.debug("Count=",a.nodeCount(),a);let B=0;o.forEach(function(r){B++,S.debug("Setting edge",r),a.setEdge(r.id1,r.id2,{relation:r,width:at(r.title),height:b.labelHeight*z.getRows(r.title).length,labelpos:"c"},"id"+B)}),J(a),S.debug("Graph after layout",a.nodes());const m=i.node();a.nodes().forEach(function(r){r!==void 0&&a.node(r)!==void 0?(S.warn("Node "+r+": "+JSON.stringify(a.node(r))),n.select("#"+m.id+" #"+r).attr("transform","translate("+(a.node(r).x-a.node(r).width/2)+","+(a.node(r).y+(T[r]?T[r].y:0)-a.node(r).height/2)+" )"),n.select("#"+m.id+" #"+r).attr("data-x-shift",a.node(r).x-a.node(r).width/2),l.querySelectorAll("#"+m.id+" #"+r+" .divider").forEach(h=>{const y=h.parentElement;let v=0,M=0;y&&(y.parentElement&&(v=y.parentElement.getBBox().width),M=parseInt(y.getAttribute("data-x-shift"),10),Number.isNaN(M)&&(M=0)),h.setAttribute("x1",0-M+8),h.setAttribute("x2",v-M-8)})):S.debug("No Node "+r+": "+JSON.stringify(a.node(r)))});let E=m.getBBox();a.edges().forEach(function(r){r!==void 0&&a.edge(r)!==void 0&&(S.debug("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(a.edge(r))),Q(i,a.edge(r),a.edge(r).relation))}),E=m.getBBox();const k={id:d||"root",label:d||"root",width:0,height:0};return k.width=E.width+2*b.padding,k.height=E.height+2*b.padding,S.debug("Doc rendered",k,a),k},"renderDoc"),it={setConf:V,draw:et},lt={parser:W,get db(){return new N(1)},renderer:it,styles:R,init:f(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{lt as diagram};
1
+ import{s as R,a as W,S as N}from"./BRWis86L.js";import{_ as f,c as t,d as H,l as S,e as P,k as z,a9 as _,aa as U,a6 as C,u as F}from"./BJvJ0Hlu.js";import{G as O}from"./qsFoMdT2.js";import{l as J}from"./CQb_mUBo.js";import"./BsCPQnkm.js";import"./BO3FEgXG.js";import"./C6teO48Y.js";var X=f(e=>e.append("circle").attr("class","start-state").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit).attr("cy",t().state.padding+t().state.sizeUnit),"drawStartState"),D=f(e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t().state.textHeight).attr("class","divider").attr("x2",t().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),Y=f((e,i)=>{const d=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+2*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),c=d.node().getBBox();return e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",c.width+2*t().state.padding).attr("height",c.height+2*t().state.padding).attr("rx",t().state.radius),d},"drawSimpleState"),I=f((e,i)=>{const d=f(function(g,B,m){const E=g.append("tspan").attr("x",2*t().state.padding).text(B);m||E.attr("dy",t().state.textHeight)},"addTspan"),n=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+1.3*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),l=n.height,x=e.append("text").attr("x",t().state.padding).attr("y",l+t().state.padding*.4+t().state.dividerMargin+t().state.textHeight).attr("class","state-description");let a=!0,s=!0;i.descriptions.forEach(function(g){a||(d(x,g,s),s=!1),a=!1});const w=e.append("line").attr("x1",t().state.padding).attr("y1",t().state.padding+l+t().state.dividerMargin/2).attr("y2",t().state.padding+l+t().state.dividerMargin/2).attr("class","descr-divider"),p=x.node().getBBox(),o=Math.max(p.width,n.width);return w.attr("x2",o+3*t().state.padding),e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",o+2*t().state.padding).attr("height",p.height+l+2*t().state.padding).attr("rx",t().state.radius),e},"drawDescrState"),$=f((e,i,d)=>{const c=t().state.padding,n=2*t().state.padding,l=e.node().getBBox(),x=l.width,a=l.x,s=e.append("text").attr("x",0).attr("y",t().state.titleShift).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),p=s.node().getBBox().width+n;let o=Math.max(p,x);o===x&&(o=o+n);let g;const B=e.node().getBBox();i.doc,g=a-c,p>x&&(g=(x-o)/2+c),Math.abs(a-B.x)<c&&p>x&&(g=a-(p-x)/2);const m=1-t().state.textHeight;return e.insert("rect",":first-child").attr("x",g).attr("y",m).attr("class",d?"alt-composit":"composit").attr("width",o).attr("height",B.height+t().state.textHeight+t().state.titleShift+1).attr("rx","0"),s.attr("x",g+c),p<=x&&s.attr("x",a+(o-n)/2-p/2+c),e.insert("rect",":first-child").attr("x",g).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",o).attr("height",t().state.textHeight*3).attr("rx",t().state.radius),e.insert("rect",":first-child").attr("x",g).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",o).attr("height",B.height+3+2*t().state.textHeight).attr("rx",t().state.radius),e},"addTitleAndBox"),q=f(e=>(e.append("circle").attr("class","end-state-outer").attr("r",t().state.sizeUnit+t().state.miniPadding).attr("cx",t().state.padding+t().state.sizeUnit+t().state.miniPadding).attr("cy",t().state.padding+t().state.sizeUnit+t().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit+2).attr("cy",t().state.padding+t().state.sizeUnit+2)),"drawEndState"),Z=f((e,i)=>{let d=t().state.forkWidth,c=t().state.forkHeight;if(i.parentId){let n=d;d=c,c=n}return e.append("rect").style("stroke","black").style("fill","black").attr("width",d).attr("height",c).attr("x",t().state.padding).attr("y",t().state.padding)},"drawForkJoinState"),j=f((e,i,d,c)=>{let n=0;const l=c.append("text");l.style("text-anchor","start"),l.attr("class","noteText");let x=e.replace(/\r\n/g,"<br/>");x=x.replace(/\n/g,"<br/>");const a=x.split(z.lineBreakRegex);let s=1.25*t().state.noteMargin;for(const w of a){const p=w.trim();if(p.length>0){const o=l.append("tspan");if(o.text(p),s===0){const g=o.node().getBBox();s+=g.height}n+=s,o.attr("x",i+t().state.noteMargin),o.attr("y",d+n+1.25*t().state.noteMargin)}}return{textWidth:l.node().getBBox().width,textHeight:n}},"_drawLongText"),K=f((e,i)=>{i.attr("class","state-note");const d=i.append("rect").attr("x",0).attr("y",t().state.padding),c=i.append("g"),{textWidth:n,textHeight:l}=j(e,0,0,c);return d.attr("height",l+2*t().state.noteMargin),d.attr("width",n+t().state.noteMargin*2),d},"drawNote"),L=f(function(e,i){const d=i.id,c={id:d,label:i.id,width:0,height:0},n=e.append("g").attr("id",d).attr("class","stateGroup");i.type==="start"&&X(n),i.type==="end"&&q(n),(i.type==="fork"||i.type==="join")&&Z(n,i),i.type==="note"&&K(i.note.text,n),i.type==="divider"&&D(n),i.type==="default"&&i.descriptions.length===0&&Y(n,i),i.type==="default"&&i.descriptions.length>0&&I(n,i);const l=n.node().getBBox();return c.width=l.width+2*t().state.padding,c.height=l.height+2*t().state.padding,c},"drawState"),A=0,Q=f(function(e,i,d){const c=f(function(s){switch(s){case N.relationType.AGGREGATION:return"aggregation";case N.relationType.EXTENSION:return"extension";case N.relationType.COMPOSITION:return"composition";case N.relationType.DEPENDENCY:return"dependency"}},"getRelationType");i.points=i.points.filter(s=>!Number.isNaN(s.y));const n=i.points,l=_().x(function(s){return s.x}).y(function(s){return s.y}).curve(U),x=e.append("path").attr("d",l(n)).attr("id","edge"+A).attr("class","transition");let a="";if(t().state.arrowMarkerAbsolute&&(a=C(!0)),x.attr("marker-end","url("+a+"#"+c(N.relationType.DEPENDENCY)+"End)"),d.title!==void 0){const s=e.append("g").attr("class","stateLabel"),{x:w,y:p}=F.calcLabelPosition(i.points),o=z.getRows(d.title);let g=0;const B=[];let m=0,E=0;for(let u=0;u<=o.length;u++){const h=s.append("text").attr("text-anchor","middle").text(o[u]).attr("x",w).attr("y",p+g),y=h.node().getBBox();m=Math.max(m,y.width),E=Math.min(E,y.x),S.info(y.x,w,p+g),g===0&&(g=h.node().getBBox().height,S.info("Title height",g,p)),B.push(h)}let k=g*o.length;if(o.length>1){const u=(o.length-1)*g*.5;B.forEach((h,y)=>h.attr("y",p+y*g-u)),k=g*o.length}const r=s.node().getBBox();s.insert("rect",":first-child").attr("class","box").attr("x",w-m/2-t().state.padding/2).attr("y",p-k/2-t().state.padding/2-3.5).attr("width",m+t().state.padding).attr("height",k+t().state.padding),S.info(r)}A++},"drawEdge"),b,T={},V=f(function(){},"setConf"),tt=f(function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),et=f(function(e,i,d,c){b=t().state;const n=t().securityLevel;let l;n==="sandbox"&&(l=H("#i"+i));const x=n==="sandbox"?H(l.nodes()[0].contentDocument.body):H("body"),a=n==="sandbox"?l.nodes()[0].contentDocument:document;S.debug("Rendering diagram "+e);const s=x.select(`[id='${i}']`);tt(s);const w=c.db.getRootDoc();G(w,s,void 0,!1,x,a,c);const p=b.padding,o=s.node().getBBox(),g=o.width+p*2,B=o.height+p*2,m=g*1.75;P(s,B,m,b.useMaxWidth),s.attr("viewBox",`${o.x-b.padding} ${o.y-b.padding} `+g+" "+B)},"draw"),at=f(e=>e?e.length*b.fontSizeFactor:1,"getLabelWidth"),G=f((e,i,d,c,n,l,x)=>{const a=new O({compound:!0,multigraph:!0});let s,w=!0;for(s=0;s<e.length;s++)if(e[s].stmt==="relation"){w=!1;break}d?a.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:w?1:b.edgeLengthFactor,nodeSep:w?1:50,isMultiGraph:!0}):a.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:w?1:b.edgeLengthFactor,nodeSep:w?1:50,ranker:"tight-tree",isMultiGraph:!0}),a.setDefaultEdgeLabel(function(){return{}});const p=x.db.getStates(),o=x.db.getRelations(),g=Object.keys(p);for(const r of g){const u=p[r];d&&(u.parentId=d);let h;if(u.doc){let y=i.append("g").attr("id",u.id).attr("class","stateGroup");h=G(u.doc,y,u.id,!c,n,l,x);{y=$(y,u,c);let v=y.node().getBBox();h.width=v.width,h.height=v.height+b.padding/2,T[u.id]={y:b.compositTitleSize}}}else h=L(i,u,a);if(u.note){const y={descriptions:[],id:u.id+"-note",note:u.note,type:"note"},v=L(i,y,a);u.note.position==="left of"?(a.setNode(h.id+"-note",v),a.setNode(h.id,h)):(a.setNode(h.id,h),a.setNode(h.id+"-note",v)),a.setParent(h.id,h.id+"-group"),a.setParent(h.id+"-note",h.id+"-group")}else a.setNode(h.id,h)}S.debug("Count=",a.nodeCount(),a);let B=0;o.forEach(function(r){B++,S.debug("Setting edge",r),a.setEdge(r.id1,r.id2,{relation:r,width:at(r.title),height:b.labelHeight*z.getRows(r.title).length,labelpos:"c"},"id"+B)}),J(a),S.debug("Graph after layout",a.nodes());const m=i.node();a.nodes().forEach(function(r){r!==void 0&&a.node(r)!==void 0?(S.warn("Node "+r+": "+JSON.stringify(a.node(r))),n.select("#"+m.id+" #"+r).attr("transform","translate("+(a.node(r).x-a.node(r).width/2)+","+(a.node(r).y+(T[r]?T[r].y:0)-a.node(r).height/2)+" )"),n.select("#"+m.id+" #"+r).attr("data-x-shift",a.node(r).x-a.node(r).width/2),l.querySelectorAll("#"+m.id+" #"+r+" .divider").forEach(h=>{const y=h.parentElement;let v=0,M=0;y&&(y.parentElement&&(v=y.parentElement.getBBox().width),M=parseInt(y.getAttribute("data-x-shift"),10),Number.isNaN(M)&&(M=0)),h.setAttribute("x1",0-M+8),h.setAttribute("x2",v-M-8)})):S.debug("No Node "+r+": "+JSON.stringify(a.node(r)))});let E=m.getBBox();a.edges().forEach(function(r){r!==void 0&&a.edge(r)!==void 0&&(S.debug("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(a.edge(r))),Q(i,a.edge(r),a.edge(r).relation))}),E=m.getBBox();const k={id:d||"root",label:d||"root",width:0,height:0};return k.width=E.width+2*b.padding,k.height=E.height+2*b.padding,S.debug("Doc rendered",k,a),k},"renderDoc"),it={setConf:V,draw:et},lt={parser:W,get db(){return new N(1)},renderer:it,styles:R,init:f(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{lt as diagram};
@@ -0,0 +1 @@
1
+ import{H as We,d as X,r as D,am as re,c as I,e as g,m as e,l as O,f as w,N as ce,w as N,z as E,t as i,g as t,o as f,A as me,n as oe,ck as He,bk as ze,i as le,M as Ie,cy as Je,cn as Ce,co as Te,cG as Le,G as ne,K as be,V as $e,k as J,q as Re,Q as te,aE as se,bi as xe,bm as Ae,bA as Pe,bB as De,F as H,s as z,bC as Be,ad as je,D as ue,Z as Ze,U as et}from"./C6teO48Y.js";import{g as Ue}from"./DG9CsZCx.js";import{X as G,Y as tt,$ as st,i as nt,a0 as ot,a1 as at,a2 as Ke,a3 as Ge,a4 as it,a5 as Me,a6 as rt,f as lt,a7 as dt,a8 as ut,e as ct,a9 as mt,aa as pt,ab as ft,_ as Qe,ac as gt,ad as Oe,ae as vt,af as bt,ag as _t,V as ht,ah as we,ai as yt,aj as xt,ak as $t,al as St,am as wt,an as kt}from"./vEHvfalB.js";import{a as It}from"./D9Ycznwo.js";import{b as pe,a as fe,_ as Se,D as ge}from"./C0jXhwNq.js";import{b as _e,a as qe}from"./BVmBXPoG.js";import{u as Ct}from"./BuTCm7Bo.js";import{_ as Tt}from"./DH2V7e8U.js";import{_ as Ne}from"./LxqkguPP.js";import{_ as Lt,u as Rt}from"./DyjsVMbv.js";import"./BHr4_sbs.js";import"./CCC5u9Ni.js";import"./C6K-C4_d.js";import"./WGDY9i_Q.js";import"./B5rxJs06.js";import"./D5GonnbJ.js";var Fe={value:"eq","<":"lt","<=":"lte",">":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},At=function(){function n(r){var u=this._condVal=Me(r)?new RegExp(r):rt(r)?r:null;if(u==null){var s="";G(s)}}return n.prototype.evaluate=function(r){var u=typeof r;return Me(u)?this._condVal.test(r):lt(u)?this._condVal.test(r+""):!1},n}(),Pt=function(){function n(){}return n.prototype.evaluate=function(){return this.value},n}(),Dt=function(){function n(){}return n.prototype.evaluate=function(){for(var r=this.children,u=0;u<r.length;u++)if(!r[u].evaluate())return!1;return!0},n}(),Bt=function(){function n(){}return n.prototype.evaluate=function(){for(var r=this.children,u=0;u<r.length;u++)if(r[u].evaluate())return!0;return!1},n}(),Nt=function(){function n(){}return n.prototype.evaluate=function(){return!this.child.evaluate()},n}(),Et=function(){function n(){}return n.prototype.evaluate=function(){for(var r=!!this.valueParser,u=this.getValue,s=u(this.valueGetterParam),o=r?this.valueParser(s):null,v=0;v<this.subCondList.length;v++)if(!this.subCondList[v].evaluate(r?o:s))return!1;return!0},n}();function Ee(n,r){if(n===!0||n===!1){var u=new Pt;return u.value=n,u}var s="";return Xe(n)||G(s),n.and?Ve("and",n,r):n.or?Ve("or",n,r):n.not?Mt(n,r):Ot(n,r)}function Ve(n,r,u){var s=r[n],o="";nt(s)||G(o),s.length||G(o);var v=n==="and"?new Dt:new Bt;return v.children=ot(s,function(c){return Ee(c,u)}),v.children.length||G(o),v}function Mt(n,r){var u=n.not,s="";Xe(u)||G(s);var o=new Nt;return o.child=Ee(u,r),o.child||G(s),o}function Ot(n,r){for(var u="",s=r.prepareGetValue(n),o=[],v=at(n),c=n.parser,x=c?Ke(c):null,h=0;h<v.length;h++){var m=v[h];if(!(m==="parser"||r.valueGetterAttrMap.get(m))){var _=Ge(Fe,m)?Fe[m]:m,$=n[m],b=x?x($):$,p=it(_,b)||_==="reg"&&new At(b);p||G(u),o.push(p)}}o.length||G(u);var S=new Et;return S.valueGetterParam=s,S.valueParser=x,S.getValue=r.getValue,S.subCondList=o,S}function Xe(n){return tt(n)&&!st(n)}var Ft=function(){function n(r,u){this._cond=Ee(r,u)}return n.prototype.evaluate=function(){return this._cond.evaluate()},n}();function Vt(n,r){return new Ft(n,r)}var Ht={type:"echarts:filter",transform:function(n){for(var r=n.upstream,u,s=Vt(n.config,{valueGetterAttrMap:dt({dimension:!0}),prepareGetValue:function(x){var h="",m=x.dimension;Ge(x,"dimension")||G(h);var _=r.getDimensionInfo(m);return _||G(h),{dimIdx:_.index}},getValue:function(x){return r.retrieveValueFromItem(u,x.dimIdx)}}),o=[],v=0,c=r.count();v<c;v++)u=r.getRawDataItem(v),s.evaluate()&&o.push(u);return{data:o}}},zt={type:"echarts:sort",transform:function(n){var r=n.upstream,u=n.config,s="",o=ut(u);o.length||G(s);var v=[];ct(o,function(_){var $=_.dimension,b=_.order,p=_.parser,S=_.incomparable;if($==null&&G(s),b!=="asc"&&b!=="desc"&&G(s),S&&S!=="min"&&S!=="max"){var l="";G(l)}if(b!=="asc"&&b!=="desc"){var a="";G(a)}var d=r.getDimensionInfo($);d||G(s);var T=p?Ke(p):null;p&&!T&&G(s),v.push({dimIdx:d.index,parser:T,comparator:new mt(b,S)})});var c=r.sourceFormat;c!==pt&&c!==ft&&G(s);for(var x=[],h=0,m=r.count();h<m;h++)x.push(r.getRawDataItem(h));return x.sort(function(_,$){for(var b=0;b<v.length;b++){var p=v[b],S=r.retrieveValueFromItem(_,p.dimIdx),l=r.retrieveValueFromItem($,p.dimIdx);p.parser&&(S=p.parser(S),l=p.parser(l));var a=p.comparator.evaluate(S,l);if(a!==0)return a}return 0}),{data:x}}};function jt(n){n.registerTransform(Ht),n.registerTransform(zt)}var Ut=function(n){Qe(r,n);function r(){var u=n!==null&&n.apply(this,arguments)||this;return u.type="dataset",u}return r.prototype.init=function(u,s,o){n.prototype.init.call(this,u,s,o),this._sourceManager=new gt(this),Oe(this)},r.prototype.mergeOption=function(u,s){n.prototype.mergeOption.call(this,u,s),Oe(this)},r.prototype.optionUpdated=function(){this._sourceManager.dirty()},r.prototype.getSourceManager=function(){return this._sourceManager},r.type="dataset",r.defaultOption={seriesLayoutBy:vt},r}(bt),Kt=function(n){Qe(r,n);function r(){var u=n!==null&&n.apply(this,arguments)||this;return u.type="dataset",u}return r.type="dataset",r}(_t);function Gt(n){n.registerComponentModel(Ut),n.registerComponentView(Kt)}const de=n=>It(n??0),ie=n=>n==null?"0.00/s":`${n.toFixed(2)}/s`,ke=n=>n==null?"0%":`${n.toFixed(2)}%`,he=n=>{if(!n)return"-";const r=new Date(n);return Number.isNaN(r.getTime())?n:r.toLocaleString()},Ye=n=>{if(n==null)return"-";if(n<60)return`${n}s`;const r=Math.floor(n/60),u=n%60;if(r<60)return`${r}m ${u}s`;const s=Math.floor(r/60),o=r%60;return`${s}h ${o}m`},Qt=n=>n==null||n<=0?"0 B":We(n).replace(" bytes"," B"),qt=n=>{if(!n)return"-";const r=n.replace(/\s+/g," ").trim();return r?r.length>320?`${r.slice(0,320)}...`:r:"-"},Xt=n=>(n||"").toLowerCase().includes("idle in transaction"),Yt={class:"space-y-4"},Wt={class:"flex items-center justify-between"},Jt={key:0,class:"border border-red-300 bg-red-50 text-red-700 rounded-lg p-3 text-sm"},Zt={class:"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-4 gap-2.5"},es={class:"h-full border rounded-lg p-2.5 space-y-2"},ts={class:"flex items-center gap-1"},ss={class:"text-sm font-semibold leading-none tabular-nums"},ns={class:"grid grid-cols-2 gap-x-3 gap-y-1 text-[11px]"},os={class:"text-muted-foreground"},as={class:"tabular-nums text-foreground"},is={class:"text-muted-foreground"},rs={class:"tabular-nums text-foreground"},ls={class:"text-muted-foreground"},ds={class:"tabular-nums text-foreground"},us={class:"text-muted-foreground"},cs={class:"tabular-nums text-foreground"},ms={class:"h-full border rounded-lg p-2.5 space-y-2"},ps={class:"flex items-center gap-1"},fs={class:"text-sm font-semibold leading-none tabular-nums"},gs={class:"grid grid-cols-2 gap-x-3 gap-y-1 text-[11px]"},vs={class:"text-muted-foreground"},bs={class:"tabular-nums text-foreground"},_s={class:"text-muted-foreground"},hs={class:"tabular-nums text-foreground"},ys={class:"text-muted-foreground"},xs={class:"tabular-nums text-foreground"},$s={class:"text-muted-foreground"},Ss={class:"tabular-nums text-foreground"},ws={class:"h-full border rounded-lg p-2.5 space-y-2"},ks={class:"flex items-center gap-1"},Is={class:"text-sm font-semibold leading-none tabular-nums"},Cs={class:"grid grid-cols-2 gap-x-3 gap-y-1 text-[11px]"},Ts={class:"text-muted-foreground"},Ls={class:"tabular-nums text-foreground"},Rs={class:"text-muted-foreground"},As={class:"tabular-nums text-foreground"},Ps={class:"text-muted-foreground"},Ds={class:"tabular-nums text-foreground"},Bs={class:"text-muted-foreground"},Ns={class:"tabular-nums text-foreground"},Es={class:"h-full border rounded-lg p-2.5 space-y-2"},Ms={class:"flex items-center gap-1"},Os={class:"text-sm font-semibold leading-none tabular-nums"},Fs={class:"grid grid-cols-2 gap-x-3 gap-y-1 text-[11px]"},Vs={class:"text-muted-foreground"},Hs={class:"tabular-nums text-foreground"},zs={class:"text-muted-foreground"},js={class:"tabular-nums text-foreground"},Us={class:"text-muted-foreground"},Ks={class:"tabular-nums text-foreground"},Gs={class:"text-muted-foreground"},Qs={class:"tabular-nums text-foreground"},qs={class:"grid grid-cols-1 xl:grid-cols-2 gap-3"},Xs={class:"border rounded-lg p-2.5"},Ys={class:"insights-chart-container"},Ws={class:"border rounded-lg p-2.5"},Js={class:"insights-chart-container"},Zs={class:"border rounded-lg p-2.5"},en={class:"insights-chart-container"},tn=X({__name:"InstanceInsightsActivitySection",props:{dashboard:{},isLoading:{type:Boolean},isActionLoading:{type:Boolean},onRefresh:{type:Function}},setup(n){ht([yt,xt,$t,Gt,jt,St,wt,kt]);const r=n,u=D({}),s=D({}),o=D({}),v=(l,a)=>{a!=null&&a.selected&&(l.value={...a.selected})},c=l=>v(u,l),x=l=>v(s,l),h=l=>v(o,l),m=D([]);re(()=>r.dashboard,l=>{if(!(l!=null&&l.capturedAt))return;const a=new Date(l.capturedAt).toLocaleTimeString(),d={capturedAt:l.capturedAt,label:a,sessionsTotal:l.sessions.total,sessionsActive:l.sessions.active,sessionsIdle:l.sessions.idle,tps:l.transactions.tps,commits:l.transactions.commitsPerSec,rollbacks:l.transactions.rollbacksPerSec,reads:l.blockIO.readsPerSec,hits:l.blockIO.hitsPerSec,hitRatio:l.blockIO.bufferHitRatio},T=m.value.findIndex(j=>j.capturedAt===d.capturedAt);if(T>=0){m.value[T]=d;return}m.value.push(d),m.value.length>80&&(m.value=m.value.slice(-80))},{immediate:!0,deep:!0});const _=I(()=>m.value.map((l,a)=>({...l,idx:a}))),$=l=>Object.keys(l).length?l:void 0,b=I(()=>({tooltip:{trigger:"axis"},legend:{top:0,selected:$(u.value)},dataset:[{id:"sessions_raw",source:_.value},{id:"sessions_filtered",fromDatasetId:"sessions_raw",transform:{type:"filter",config:{dimension:"idx",gte:0}}}],grid:{left:45,right:20,top:34,bottom:24},xAxis:{type:"category",boundaryGap:!1},yAxis:{type:"value"},series:[{name:"Total",type:"line",smooth:!0,datasetId:"sessions_filtered",encode:{x:"label",y:"sessionsTotal"}},{name:"Active",type:"line",smooth:!0,datasetId:"sessions_filtered",encode:{x:"label",y:"sessionsActive"}},{name:"Idle",type:"line",smooth:!0,datasetId:"sessions_filtered",encode:{x:"label",y:"sessionsIdle"}}]})),p=I(()=>({tooltip:{trigger:"axis"},legend:{top:0,selected:$(s.value)},dataset:[{id:"transactions_dataset",source:_.value}],grid:{left:45,right:20,top:34,bottom:24},xAxis:{type:"category",boundaryGap:!0},yAxis:[{type:"value",name:"TPS"},{type:"value",name:"Commit/Rollback"}],series:[{name:"TPS",type:"line",smooth:!0,yAxisIndex:0,datasetId:"transactions_dataset",encode:{x:"label",y:"tps"}},{name:"Commits/s",type:"bar",yAxisIndex:1,datasetId:"transactions_dataset",encode:{x:"label",y:"commits"}},{name:"Rollbacks/s",type:"bar",yAxisIndex:1,datasetId:"transactions_dataset",encode:{x:"label",y:"rollbacks"}}]})),S=I(()=>({tooltip:{trigger:"axis"},legend:{top:0,selected:$(o.value)},dataset:[{id:"block_io_dataset",source:_.value}],grid:{left:45,right:20,top:34,bottom:24},xAxis:{type:"category",boundaryGap:!0},yAxis:[{type:"value",name:"Blocks/s"},{type:"value",name:"Hit %",min:0,max:100}],series:[{name:"Reads/s",type:"bar",yAxisIndex:0,datasetId:"block_io_dataset",encode:{x:"label",y:"reads"}},{name:"Hits/s",type:"bar",yAxisIndex:0,datasetId:"block_io_dataset",encode:{x:"label",y:"hits"}},{name:"Buffer Hit Ratio",type:"line",smooth:!0,yAxisIndex:1,datasetId:"block_io_dataset",encode:{x:"label",y:"hitRatio"}}]}));return(l,a)=>{var j,R,F,K,Q,k,M,V,y,L,U,A,P,q,Z,ae,ve,C,B,W,Y;const d=me,T=ce;return f(),g("div",Yt,[e("div",Wt,[a[2]||(a[2]=e("div",null,[e("h3",{class:"text-sm font-medium"},"Activity Dashboard"),e("p",{class:"text-xs text-muted-foreground"}," Sessions, TPS, tuples and block I/O ")],-1)),w(T,{variant:"outline",size:"xs",disabled:l.isLoading||l.isActionLoading,class:"font-normal",onClick:a[0]||(a[0]=ye=>l.onRefresh())},{default:N(()=>[w(d,{name:"hugeicons:redo",class:oe(["size-4",l.isLoading&&"animate-spin"])},null,8,["class"]),a[1]||(a[1]=E(" Refresh Activity "))]),_:1},8,["disabled"])]),(j=l.dashboard)!=null&&j.sessions.exceedsThreshold?(f(),g("div",Jt,[a[3]||(a[3]=E(" Total connections are at ")),e("strong",null,i(t(ke)(l.dashboard.sessions.usagePercent)),1),a[4]||(a[4]=E(" of ")),a[5]||(a[5]=e("strong",null,"max_connections",-1)),a[6]||(a[6]=E(". Investigate connection pool usage. "))])):O("",!0),e("div",Zt,[e("div",es,[e("div",ts,[a[7]||(a[7]=e("p",{class:"text-xs uppercase text-muted-foreground"},"Sessions:",-1)),e("p",ss,i(t(de)((R=l.dashboard)==null?void 0:R.sessions.total)),1)]),e("div",ns,[e("p",os,[a[8]||(a[8]=e("span",null,"Active: ",-1)),e("span",as,i(t(de)((F=l.dashboard)==null?void 0:F.sessions.active)),1)]),e("p",is,[a[9]||(a[9]=e("span",null,"Idle: ",-1)),e("span",rs,i(t(de)((K=l.dashboard)==null?void 0:K.sessions.idle)),1)]),e("p",ls,[a[10]||(a[10]=e("span",null,"Max: ",-1)),e("span",ds,i(t(de)((Q=l.dashboard)==null?void 0:Q.sessions.maxConnections)),1)]),e("p",us,[a[11]||(a[11]=e("span",null,"Usage: ",-1)),e("span",cs,i(t(ke)((k=l.dashboard)==null?void 0:k.sessions.usagePercent)),1)])])]),e("div",ms,[e("div",ps,[a[12]||(a[12]=e("p",{class:"text-xs uppercase text-muted-foreground"},"TPS:",-1)),e("p",fs,i(t(ie)((M=l.dashboard)==null?void 0:M.transactions.tps)),1)]),e("div",gs,[e("p",vs,[a[13]||(a[13]=e("span",null,"Commits/sec: ",-1)),e("span",bs,i(t(ie)((V=l.dashboard)==null?void 0:V.transactions.commitsPerSec)),1)]),e("p",_s,[a[14]||(a[14]=e("span",null,"Rollbacks/sec: ",-1)),e("span",hs,i(t(ie)((y=l.dashboard)==null?void 0:y.transactions.rollbacksPerSec)),1)]),e("p",ys,[a[15]||(a[15]=e("span",null,"Total Commits: ",-1)),e("span",xs,i(t(de)((L=l.dashboard)==null?void 0:L.transactions.totalCommits)),1)]),e("p",$s,[a[16]||(a[16]=e("span",null,"Total Rollbacks: ",-1)),e("span",Ss,i(t(de)((U=l.dashboard)==null?void 0:U.transactions.totalRollbacks)),1)])])]),e("div",ws,[e("div",ks,[a[17]||(a[17]=e("p",{class:"text-xs uppercase text-muted-foreground"},"Tuples:",-1)),e("p",Is,i(t(ie)((A=l.dashboard)==null?void 0:A.tuples.insertsPerSec)),1)]),e("div",Cs,[e("p",Ts,[a[18]||(a[18]=e("span",null,"Updates: ",-1)),e("span",Ls,i(t(ie)((P=l.dashboard)==null?void 0:P.tuples.updatesPerSec)),1)]),e("p",Rs,[a[19]||(a[19]=e("span",null,"Deletes: ",-1)),e("span",As,i(t(ie)((q=l.dashboard)==null?void 0:q.tuples.deletesPerSec)),1)]),e("p",Ps,[a[20]||(a[20]=e("span",null,"Fetched: ",-1)),e("span",Ds,i(t(ie)((Z=l.dashboard)==null?void 0:Z.tuples.fetchedPerSec)),1)]),e("p",Bs,[a[21]||(a[21]=e("span",null,"Returned: ",-1)),e("span",Ns,i(t(ie)((ae=l.dashboard)==null?void 0:ae.tuples.returnedPerSec)),1)])])]),e("div",Es,[e("div",Ms,[a[22]||(a[22]=e("p",{class:"text-xs uppercase text-muted-foreground"},"Block I/O:",-1)),e("p",Os,i(t(ke)((ve=l.dashboard)==null?void 0:ve.blockIO.bufferHitRatio)),1)]),e("div",Fs,[e("p",Vs,[a[23]||(a[23]=e("span",null,"Reads/sec: ",-1)),e("span",Hs,i(t(ie)((C=l.dashboard)==null?void 0:C.blockIO.readsPerSec)),1)]),e("p",zs,[a[24]||(a[24]=e("span",null,"Hits/sec: ",-1)),e("span",js,i(t(ie)((B=l.dashboard)==null?void 0:B.blockIO.hitsPerSec)),1)]),e("p",Us,[a[25]||(a[25]=e("span",null,"Total Reads: ",-1)),e("span",Ks,i(t(de)((W=l.dashboard)==null?void 0:W.blockIO.totalReads)),1)]),e("p",Gs,[a[26]||(a[26]=e("span",null,"Total Hits: ",-1)),e("span",Qs,i(t(de)((Y=l.dashboard)==null?void 0:Y.blockIO.totalHits)),1)])])])]),e("div",qs,[e("div",Xs,[a[27]||(a[27]=e("p",{class:"text-sm font-medium mb-1.5"},"Sessions Timeline",-1)),e("div",Ys,[w(t(we),{option:t(b),autoresize:"",class:"insights-chart",onLegendselectchanged:c},null,8,["option"])])]),e("div",Ws,[a[28]||(a[28]=e("p",{class:"text-sm font-medium mb-1.5"},"Transactions Timeline",-1)),e("div",Js,[w(t(we),{option:t(p),autoresize:"",class:"insights-chart",onLegendselectchanged:x},null,8,["option"])])])]),e("div",Zs,[a[29]||(a[29]=e("p",{class:"text-sm font-medium mb-1.5"},"Block I/O Timeline",-1)),e("div",en,[w(t(we),{option:t(S),autoresize:"",class:"insights-chart",onLegendselectchanged:h},null,8,["option"])])])])}}}),sn=He(tn,[["__scopeId","data-v-ba36a884"]]),nn={class:"space-y-4 h-full flex flex-col overflow-auto"},on={class:"flex items-center justify-between gap-2 flex-wrap"},an={class:"h-full"},rn={class:"flex flex-col sm:flex-row sm:items-center gap-2 mb-2"},ln={class:"relative flex-1"},dn=X({__name:"InstanceInsightsConfigurationSection",props:{configuration:{},search:{},isLoading:{type:Boolean},isActionLoading:{type:Boolean},onRefresh:{type:Function}},emits:["update:search"],setup(n,{emit:r}){const u=n,s=r,o=I({get:()=>u.search,set:_=>s("update:search",_)}),v=I(()=>{var _;return((_=u.configuration)==null?void 0:_.rows)||[]}),c=I(()=>v.value.map(_=>({name:_.name,category:_.category,value:_.value,unit:_.unit||"-",requires_restart:_.pendingRestart?"yes":"no",description:_.description}))),x=I(()=>_e(c.value)),h=I(()=>pe({columns:x.value,rows:c.value,columnKeyBy:"field"})),m=I(()=>fe(c.value));return(_,$)=>{const b=me,p=ce,S=ze,l=Se;return f(),g("div",nn,[e("div",on,[$[3]||($[3]=e("div",null,[e("h3",{class:"text-sm font-medium"},"Configuration"),e("p",{class:"text-xs text-muted-foreground"},"Searchable pg_settings")],-1)),w(p,{variant:"outline",size:"xs",disabled:_.isLoading||_.isActionLoading,class:"font-normal",onClick:$[0]||($[0]=a=>_.onRefresh())},{default:N(()=>[w(b,{name:"hugeicons:redo",class:oe(["size-4",_.isLoading&&"animate-spin"])},null,8,["class"]),$[2]||($[2]=E(" Refresh Configuration "))]),_:1},8,["disabled"])]),e("div",an,[e("div",rn,[e("div",ln,[w(b,{name:"hugeicons:search-01",class:"size-4 absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground"}),w(S,{type:"text",placeholder:"Search setting name, category, or description...",class:"h-8 w-full pl-8 pr-3",modelValue:t(o),"onUpdate:modelValue":$[1]||($[1]=a=>le(o)?o.value=a:null)},null,8,["modelValue"])])]),w(l,{"column-defs":t(h),"row-data":t(m),"column-types":t(ge),class:"h-full border rounded-md"},null,8,["column-defs","row-data","column-types"])])])}}}),un={class:"space-y-4"},cn={class:"flex items-center justify-between"},mn={key:0,class:"border border-orange-300 bg-orange-50 text-orange-700 rounded-lg p-3 text-sm"},pn={class:"space-y-1.5"},fn={class:"space-y-1.5"},gn={key:1,class:"border rounded-lg p-2.5"},vn={class:"flex items-center justify-between gap-3 flex-wrap"},bn={class:"text-sm font-medium"},_n={class:"flex items-center gap-2"},hn=300,yn=120,xn=44,$n=36,Sn=X({__name:"InstanceInsightsReplicationSection",props:{replication:{},isLoading:{type:Boolean},isActionLoading:{type:Boolean},onRefresh:{type:Function},onToggleSlotStatus:{type:Function},onDropSlot:{type:Function}},setup(n){const r=n,u=I(()=>{var k;return((k=r.replication)==null?void 0:k.replicationStats)||[]}),s=I(()=>{var k;return((k=r.replication)==null?void 0:k.replicationSlots)||[]}),o=D([]),v=k=>{o.value=k},c=I(()=>u.value.map(k=>({pid:k.pid,client_addr:k.clientAddr||"-",application:k.applicationName||"-",state:k.state||"-",sync_state:k.syncState||"-",reply_time:he(k.replyTime),write_lag:k.writeLag||"-",flush_lag:k.flushLag||"-",replay_lag:k.replayLag||"-"}))),x=["pid","client_addr","application","state","sync_state","reply_time","write_lag","flush_lag","replay_lag"],h=I(()=>c.value.length>0?_e(c.value):qe(x)),m=I(()=>pe({columns:h.value,rows:c.value,columnKeyBy:"field"})),_=I(()=>fe(c.value)),$=I(()=>s.value.map(k=>({slot_name:k.slotName,slot_type:k.slotType,status:k.active?"on":"off",active_pid:k.activePid??"-",restart_lsn:k.restartLsn||"-",retained_wal:Qt(k.retainedBytes),temporary:k.temporary?"yes":"no"}))),b=I(()=>_e($.value)),p=I(()=>pe({columns:b.value,rows:$.value,columnKeyBy:"field"})),S=I(()=>fe($.value)),l=k=>k<=0?yn:Math.min(hn,xn+k*$n),a=I(()=>`${l(c.value.length)}px`),d=I(()=>`${l($.value.length)}px`),T=I(()=>{var M;const k=String(((M=o.value[0])==null?void 0:M.slot_name)||"");return k&&s.value.find(V=>V.slotName===k)||null}),j=I(()=>{var k;return(k=T.value)!=null&&k.active?"off":"on"}),R=I(()=>j.value==="off"?"Turn Off Slot":"Turn On Slot"),F=k=>window.confirm(k),K=async()=>{T.value&&F(`Drop replication slot "${T.value.slotName}"? This action cannot be undone.`)&&await r.onDropSlot(T.value.slotName)},Q=async()=>{T.value&&F(`Switch replication slot "${T.value.slotName}" to ${j.value.toUpperCase()} status?`)&&await r.onToggleSlotStatus({slotName:T.value.slotName,desiredStatus:j.value,activePid:T.value.activePid,slotType:T.value.slotType})};return(k,M)=>{var U;const V=me,y=ce,L=Se;return f(),g("div",un,[e("div",cn,[M[2]||(M[2]=e("div",null,[e("h3",{class:"text-sm font-medium"},"Replication"),e("p",{class:"text-xs text-muted-foreground"},"Replication stats and slots")],-1)),w(y,{variant:"outline",size:"xs",disabled:k.isLoading||k.isActionLoading,class:"font-normal",onClick:M[0]||(M[0]=A=>k.onRefresh())},{default:N(()=>[w(V,{name:"hugeicons:redo",class:oe(["size-4",k.isLoading&&"animate-spin"])},null,8,["class"]),M[1]||(M[1]=E(" Refresh Replication "))]),_:1},8,["disabled"])]),(U=k.replication)!=null&&U.staleSlotWarning?(f(),g("div",mn,i(k.replication.staleSlotWarning),1)):O("",!0),e("div",pn,[M[3]||(M[3]=e("p",{class:"text-sm"},"Replication Stats",-1)),e("div",{class:"max-h-[300px] min-h-[200px]",style:Ie({height:t(a)})},[w(L,{"column-defs":t(m),"row-data":t(_),"column-types":t(ge),class:"h-full border rounded-md"},null,8,["column-defs","row-data","column-types"])],4)]),e("div",fn,[M[4]||(M[4]=e("h4",{class:"text-sm font-normal"},"Replication Slots",-1)),e("div",{class:"max-h-[300px] min-h-[200px]",style:Ie({height:t(d)})},[w(L,{"column-defs":t(p),"row-data":t(S),"column-types":t(ge),"selected-rows":t(o),class:"h-full border rounded-md",onSelectionChanged:v},null,8,["column-defs","row-data","column-types","selected-rows"])],4)]),t(T)?(f(),g("div",gn,[e("div",vn,[e("p",bn," Selected Slot: "+i(t(T).slotName)+" ("+i(t(T).active?"on":"off")+") · Active PID: "+i(t(T).activePid??"-"),1),e("div",_n,[w(y,{variant:"outline",size:"sm",disabled:k.isActionLoading,onClick:Q},{default:N(()=>[E(i(t(R)),1)]),_:1},8,["disabled"]),w(y,{variant:"outline",size:"sm",disabled:k.isActionLoading,onClick:K},{default:N(()=>M[5]||(M[5]=[E(" Drop Slot ")])),_:1},8,["disabled"])])])])):O("",!0)])}}}),wn={class:"space-y-4"},kn={class:"flex items-center justify-between"},In={class:"space-y-1.5"},Cn={class:"h-[360px]"},Tn={key:0,class:"border rounded-lg p-2.5 space-y-2"},Ln={class:"flex items-center justify-between gap-3 flex-wrap"},Rn={class:"text-sm font-medium"},An={class:"flex gap-2"},Pn=["innerHTML"],Dn={class:"grid grid-cols-1 xl:grid-cols-2 gap-3"},Bn={class:"space-y-1.5"},Nn={class:"h-[300px]"},En={class:"space-y-1.5"},Mn={class:"h-[300px]"},On=X({__name:"InstanceInsightsStateSection",props:{state:{},isLoading:{type:Boolean},isActionLoading:{type:Boolean},onRefresh:{type:Function},onCancelQuery:{type:Function},onTerminateConnection:{type:Function}},setup(n){const r=n,{highlightSql:u}=Ct(),s=I(()=>{var y;return((y=r.state)==null?void 0:y.sessions)||[]}),o=I(()=>{var y;return((y=r.state)==null?void 0:y.locks)||[]}),v=I(()=>{var y;return((y=r.state)==null?void 0:y.preparedTransactions)||[]}),c=D([]),x=y=>{c.value=y},h=I(()=>s.value.map(y=>({pid:y.pid,user:y.user,application:y.application||"-",client:y.client||"-",state:y.state||"-",wait_event:y.waitEvent||"-",blocking_pids:y.blockingPids.length?y.blockingPids.join(", "):"-",backend_start:he(y.backendStart),transaction_start:he(y.transactionStart),query_duration:Ye(y.durationSeconds),sql:qt(y.sql)}))),m=I(()=>_e(h.value)),_=I(()=>pe({columns:m.value,rows:h.value,columnKeyBy:"field",getCellClass:Q})),$=I(()=>fe(h.value)),b=I(()=>o.value.map(y=>({lock_type:y.lockType,target_relation:y.targetRelation||"-",mode:y.mode,granted:y.granted?"yes":"no",pid:y.pid??"-",user:y.user||"-",state:y.state||"-"}))),p=I(()=>_e(b.value)),S=I(()=>pe({columns:p.value,rows:b.value,columnKeyBy:"field"})),l=I(()=>fe(b.value)),a=I(()=>v.value.map(y=>({gid:y.gid,transaction:y.transaction,prepared:he(y.prepared),owner:y.owner,database:y.database}))),d=I(()=>_e(a.value)),T=I(()=>pe({columns:d.value,rows:a.value,columnKeyBy:"field"})),j=I(()=>fe(a.value)),R=I(()=>{var L;const y=Number(((L=c.value[0])==null?void 0:L.pid)||0);return y&&s.value.find(U=>U.pid===y)||null}),F=y=>{if(!y||!y.trim())return"<pre><code>-</code></pre>";const L=y.replace(/\s+/g," ").trim(),U=L.length>900?`${L.slice(0,900)} ...`:L;return u(U)},K=I(()=>{var y;return F(((y=R.value)==null?void 0:y.sql)||null)}),Q=(y,L)=>{const U=String(L.state||"");return Xt(U)?"insights-danger-cell":void 0},k=y=>window.confirm(y),M=async()=>{R.value&&k(`Cancel query for PID ${R.value.pid}?`)&&await r.onCancelQuery(R.value.pid)},V=async()=>{R.value&&k(`Terminate connection for PID ${R.value.pid}?`)&&await r.onTerminateConnection(R.value.pid)};return(y,L)=>{const U=me,A=ce,P=Se;return f(),g("div",wn,[e("div",kn,[L[2]||(L[2]=e("div",null,[e("h3",{class:"text-sm font-medium"},"State"),e("p",{class:"text-xs text-muted-foreground"}," Active sessions, locks, prepared transactions ")],-1)),w(A,{variant:"outline",size:"xs",disabled:y.isLoading||y.isActionLoading,class:"font-normal",onClick:L[0]||(L[0]=q=>y.onRefresh())},{default:N(()=>[w(U,{name:"hugeicons:redo",class:oe(["size-4",y.isLoading&&"animate-spin"])},null,8,["class"]),L[1]||(L[1]=E(" Refresh State "))]),_:1},8,["disabled"])]),e("div",In,[L[3]||(L[3]=e("h4",{class:"text-sm font-normal"},"Active Sessions",-1)),e("div",Cn,[w(P,{"column-defs":t(_),"row-data":t($),"column-types":t(ge),"selected-rows":t(c),class:"h-full border rounded-md",onSelectionChanged:x},null,8,["column-defs","row-data","column-types","selected-rows"])])]),t(R)?(f(),g("div",Tn,[e("div",Ln,[e("p",Rn," Selected PID: "+i(t(R).pid)+" ("+i(t(R).state||"-")+") ",1),e("div",An,[w(A,{variant:"outline",size:"sm",disabled:y.isActionLoading,onClick:M},{default:N(()=>L[4]||(L[4]=[E(" Cancel Query ")])),_:1},8,["disabled"]),w(A,{variant:"outline",size:"sm",disabled:y.isActionLoading,onClick:V},{default:N(()=>L[5]||(L[5]=[E(" Terminate Connection ")])),_:1},8,["disabled"])])]),e("div",null,[L[6]||(L[6]=e("p",{class:"text-xs text-muted-foreground mb-1"},"SQL Preview",-1)),e("div",{class:"sql-preview border rounded-md overflow-hidden",innerHTML:t(K)},null,8,Pn)])])):O("",!0),e("div",Dn,[e("div",Bn,[L[7]||(L[7]=e("h4",{class:"text-sm font-normal"},"Locks",-1)),e("div",Nn,[w(P,{"column-defs":t(S),"row-data":t(l),"column-types":t(ge),class:"h-full border rounded-md"},null,8,["column-defs","row-data","column-types"])])]),e("div",En,[L[8]||(L[8]=e("h4",{class:"text-sm font-normal"},"Prepared Transactions",-1)),e("div",Mn,[w(P,{"column-defs":t(T),"row-data":t(j),"column-types":t(ge),class:"h-full border rounded-md"},null,8,["column-defs","row-data","column-types"])])])])])}}}),Fn=He(On,[["__scopeId","data-v-07dc1849"]]),Vn=5e3;function Hn(n){const r=D("activity"),u=D(!0),s=D(Vn),o=D(null),v=D(!1),c=D(!1),x=D(!1),h=D(!1),m=D(!1),_=D(!1),$=D(null),b=D(null),p=D(null),S=D(null),l=D(""),a=Je(l,350),d=I(()=>!!n.value),T=D(!0);Ce(()=>{T.value=!1}),Te(()=>{T.value=!0});const j=()=>{o.value=null,$.value=null,b.value=null,p.value=null,S.value=null},R=async(C,B)=>{var W;try{return o.value=null,await C()}catch(Y){const ye=((W=Y==null?void 0:Y.data)==null?void 0:W.message)||(Y==null?void 0:Y.message)||(Y==null?void 0:Y.statusMessage)||B;return o.value=ye,null}},F=async(C={})=>{if(!d.value)return null;C.silent||(x.value=!0);const B=await R(async()=>await $fetch("/api/instance-insights/dashboard",{method:"POST",body:{...ne(n.value)}}),"Failed to fetch activity dashboard");return B&&($.value=B),C.silent||(x.value=!1),B},K=async(C={})=>{if(!d.value)return null;C.silent||(h.value=!0);const B=await R(async()=>await $fetch("/api/instance-insights/state",{method:"POST",body:{...ne(n.value)}}),"Failed to fetch active sessions and locks");return B&&(b.value=B),C.silent||(h.value=!1),B},Q=async(C={})=>{if(!d.value)return null;C.silent||(m.value=!0);const B=await R(async()=>await $fetch("/api/instance-insights/configuration",{method:"POST",body:{...ne(n.value),search:a.value||void 0}}),"Failed to fetch PostgreSQL settings");return B&&(p.value=B),C.silent||(m.value=!1),B},k=async(C={})=>{if(!d.value)return null;C.silent||(_.value=!0);const B=await R(async()=>await $fetch("/api/instance-insights/replication",{method:"POST",body:{...ne(n.value)}}),"Failed to fetch replication status");return B&&(S.value=B),C.silent||(_.value=!1),B},M=async(C=r.value,B={})=>{switch(C){case"activity":await F(B);break;case"state":await Promise.all([F({silent:!0}),K(B)]);break;case"configuration":await Promise.all([F({silent:!0}),Q(B)]);break;case"replication":await Promise.all([F({silent:!0}),k(B)]);break;default:await F(B);break}},V=async(C={})=>{await Promise.all([F(C),K(C),Q(C),k(C)])},y=async(C,B)=>{if(!d.value)return!1;c.value=!0;const W=await R(C,"Action failed");return c.value=!1,W?(W.success?be(B,{description:W.message}):be(W.message,{description:"The server did not complete this action."}),W.success):(be(o.value||"Action failed",{description:"Check database permissions and try again."}),!1)},L=async C=>{await y(async()=>await $fetch("/api/instance-insights/cancel-query",{method:"POST",body:{...ne(n.value),pid:C}}),`Cancelled query for PID ${C}`)&&await K({silent:!0})},U=async C=>{await y(async()=>await $fetch("/api/instance-insights/terminate-connection",{method:"POST",body:{...ne(n.value),pid:C}}),`Terminated connection for PID ${C}`)&&(await K({silent:!0}),await F({silent:!0}))},A=async C=>{await y(async()=>await $fetch("/api/instance-insights/drop-slot",{method:"POST",body:{...ne(n.value),slotName:C}}),`Dropped replication slot "${C}"`)&&await k({silent:!0})},P=async C=>{await y(async()=>await $fetch("/api/instance-insights/toggle-slot-status",{method:"POST",body:{...ne(n.value),slotName:C.slotName,desiredStatus:C.desiredStatus,activePid:C.activePid??null,slotType:C.slotType??null}}),`Turned ${C.desiredStatus} slot "${C.slotName}"`)&&await k({silent:!0})},q=async()=>{if(!d.value){j();return}v.value=!0,await V(),v.value=!1};re(()=>n.value,async C=>{if(!C){j();return}await q()},{immediate:!0}),re(()=>a.value,async()=>{r.value!=="configuration"||!d.value||await Q({silent:!0})}),re(()=>r.value,async C=>{d.value&&(C==="state"&&!b.value&&await K(),C==="configuration"&&!p.value&&await Q(),C==="replication"&&!S.value&&await k())});const{pause:Z,resume:ae,isActive:ve}=Le(async()=>{!d.value||!T.value||await M(r.value,{silent:!0})},s,{immediate:!1});return re(()=>u.value,C=>{C?ae():Z()},{immediate:!0}),{activeSection:r,autoRefresh:u,isAutoRefreshRunning:ve,error:o,isInitialLoading:v,isActionLoading:c,isDashboardLoading:x,isStateLoading:h,isConfigurationLoading:m,isReplicationLoading:_,dashboard:$,state:b,configuration:p,replication:S,configurationSearch:l,refreshSection:M,refreshAll:V,fetchDashboard:F,fetchState:K,fetchConfiguration:Q,fetchReplication:k,cancelQuery:L,terminateConnection:U,dropReplicationSlot:A,toggleReplicationSlotStatus:P}}const zn={class:"flex flex-col h-full p-3 gap-3 overflow-hidden"},jn={class:"flex flex-col lg:flex-row lg:items-start lg:justify-between border rounded-lg p-3 gap-3 bg-background"},Un={class:"space-y-1"},Kn={class:"flex items-center gap-2"},Gn={class:"text-sm text-muted-foreground flex items-center gap-0.5"},Qn={class:"flex items-center gap-0.5"},qn={class:"font-medium text-foreground"},Xn={key:0,class:"flex items-center gap-1.5 mt-0.5"},Yn={class:"flex items-center gap-2 flex-wrap"},Wn={class:"text-xs flex items-center gap-2"},Jn={class:"flex items-center justify-between gap-2"},Zn={class:"text-xs text-muted-foreground"},eo={key:0,class:"border border-red-300 bg-red-50 text-red-700 rounded-lg p-3 text-sm"},to={key:1,class:"border rounded-lg p-6 flex items-center justify-center gap-2 text-muted-foreground"},so={key:2,class:"flex-1 overflow-y-auto border rounded-lg p-3 bg-background"},no=X({__name:"InstanceInsightsPanel",props:{dbConnectionString:{},databaseName:{},dbType:{}},setup(n){const r=[{id:"activity",tabLabel:"Activity",subtitle:"Sessions, TPS, tuples and block I/O",icon:"hugeicons:artificial-intelligence-08"},{id:"state",tabLabel:"State",subtitle:"Active sessions, locks, prepared transactions",icon:"hugeicons:shield-01"},{id:"configuration",tabLabel:"Config",subtitle:"Searchable pg_settings",icon:"hugeicons:settings-01"},{id:"replication",tabLabel:"Replication",subtitle:"Replication stats and slots",icon:"hugeicons:database"}],u=$e(),s=I(()=>u.selectedConnection),{activeSection:o,autoRefresh:v,error:c,isInitialLoading:x,isActionLoading:h,isDashboardLoading:m,isStateLoading:_,isConfigurationLoading:$,isReplicationLoading:b,dashboard:p,state:S,configuration:l,replication:a,configurationSearch:d,refreshSection:T,refreshAll:j,cancelQuery:R,terminateConnection:F,dropReplicationSlot:K,toggleReplicationSlotStatus:Q}=Hn(s);I(()=>r.find(A=>A.id===o.value));const k=I(()=>{var A,P,q,Z;return o.value==="activity"?(A=p.value)==null?void 0:A.capturedAt:o.value==="state"?(P=S.value)==null?void 0:P.capturedAt:o.value==="configuration"?(q=l.value)==null?void 0:q.capturedAt:(Z=a.value)==null?void 0:Z.capturedAt}),M=()=>T("activity"),V=()=>T("state"),y=()=>T("configuration"),L=()=>T("replication"),U=A=>Q(A);return(A,P)=>{var Y,ye;const q=me,Z=xe,ae=Ae,ve=ce,C=Be,B=De,W=Pe;return f(),g("div",zn,[e("div",jn,[e("div",Un,[e("div",Kn,[w(q,{name:"hugeicons:database",class:"size-5 text-primary"}),P[4]||(P[4]=e("h2",{class:"text-base font-medium"},"Instance Insights",-1))]),e("div",Gn,[P[5]||(P[5]=E(" connection: ")),e("div",Qn,[A.dbType?(f(),J(Re((Y=t(Ue)(A.dbType))==null?void 0:Y.icon),{key:0,class:"size-4!"})):O("",!0),e("span",qn,i(A.databaseName),1)])]),(ye=t(p))!=null&&ye.version?(f(),g("div",Xn,[w(Z,{variant:"outline",class:"text-xxs h-5 px-1.5 font-normal"},{default:N(()=>[E(" PostgreSQL "+i(t(p).version),1)]),_:1})])):O("",!0)]),e("div",Yn,[e("div",Wn,[w(ae,{id:"insights-auto-refresh","model-value":t(v),"onUpdate:modelValue":P[0]||(P[0]=ee=>le(v)?v.value=ee:null),class:"cursor-pointer"},null,8,["model-value"]),P[6]||(P[6]=e("label",{for:"insights-auto-refresh",class:"cursor-pointer"}," Auto refresh ",-1))]),w(ve,{variant:"outline",size:"sm",disabled:t(x)||t(h),onClick:P[1]||(P[1]=ee=>t(j)()),class:"font-normal"},{default:N(()=>[w(q,{name:"hugeicons:redo",class:"size-4"}),P[7]||(P[7]=E(" Refresh All "))]),_:1},8,["disabled"])])]),e("div",Jn,[w(W,{modelValue:t(o),"onUpdate:modelValue":P[2]||(P[2]=ee=>le(o)?o.value=ee:null),class:"gap-0 flex-1 min-w-0"},{default:N(()=>[w(B,{size:"sm",class:"max-w-full overflow-x-auto justify-start!"},{default:N(()=>[(f(),g(H,null,z(r,ee=>w(C,{size:"xs",key:ee.id,value:ee.id,class:"rounded-sm cursor-pointer min-w-fit shrink-0",onClick:gr=>t(T)(ee.id,{silent:!0})},{default:N(()=>[w(q,{name:ee.icon,class:"size-3.5!"},null,8,["name"]),E(" "+i(ee.tabLabel),1)]),_:2},1032,["value","onClick"])),64))]),_:1})]),_:1},8,["modelValue"]),e("div",Zn," Last updated: "+i(t(he)(t(k))),1)]),t(c)?(f(),g("div",eo,i(t(c)),1)):O("",!0),t(x)&&!t(p)?(f(),g("div",to,[w(q,{name:"hugeicons:redo",class:"size-4 animate-spin"}),P[8]||(P[8]=E(" Loading instance insights... "))])):(f(),g("div",so,[te(w(sn,{dashboard:t(p),isLoading:t(m),isActionLoading:t(h),onRefresh:M},null,8,["dashboard","isLoading","isActionLoading"]),[[se,t(o)==="activity"]]),te(w(Fn,{state:t(S),isLoading:t(_),isActionLoading:t(h),onRefresh:V,onCancelQuery:t(R),onTerminateConnection:t(F)},null,8,["state","isLoading","isActionLoading","onCancelQuery","onTerminateConnection"]),[[se,t(o)==="state"]]),te(w(dn,{search:t(d),"onUpdate:search":P[3]||(P[3]=ee=>le(d)?d.value=ee:null),configuration:t(l),isLoading:t($),isActionLoading:t(h),onRefresh:y},null,8,["search","configuration","isLoading","isActionLoading"]),[[se,t(o)==="configuration"]]),te(w(Sn,{replication:t(a),isLoading:t(b),isActionLoading:t(h),onRefresh:L,onDropSlot:t(K),onToggleSlotStatus:U},null,8,["replication","isLoading","isActionLoading","onDropSlot"]),[[se,t(o)==="replication"]])]))])}}}),oo={key:0,class:"space-y-4"},ao={class:"flex items-start justify-between gap-3 flex-wrap"},io={class:"text-sm font-medium"},ro={class:"text-xs text-muted-foreground"},lo={key:1,class:"flex gap-2 flex-wrap"},uo={key:2,class:"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-4 gap-2.5"},co={class:"text-xs uppercase text-muted-foreground"},mo={class:"text-sm font-semibold leading-none tabular-nums"},po={key:0,class:"text-[11px] text-muted-foreground"},fo={key:3,class:"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-2.5"},go={class:"text-xs uppercase text-muted-foreground"},vo={class:"text-sm font-medium leading-tight break-words"},bo={key:0,class:"text-[11px] text-muted-foreground"},_o={key:4,class:"space-y-2"},ho={class:"font-medium"},yo={class:"text-xs mt-1"},xo={class:"text-sm font-normal"},$o={key:0,class:"text-xs text-muted-foreground"},So={key:0,class:"text-xs text-muted-foreground"},wo=360,ko=120,Io=44,Co=36,To=X({__name:"InstanceInsightsSectionRenderer",props:{section:{},search:{}},setup(n){const r=n,u=I(()=>{var m;return((m=r.search)==null?void 0:m.trim().toLowerCase())||""}),s=I(()=>r.section?!r.section.searchable||!u.value?r.section.tables||[]:(r.section.tables||[]).map(m=>({...m,rows:m.rows.filter(_=>Object.values(_).some($=>String($??"").toLowerCase().includes(u.value)))})):[]),o=m=>m<=0?ko:Math.min(wo,Io+m*Co),v=m=>m==="supported"?"border-emerald-300 bg-emerald-50 text-emerald-700":m==="conditional"?"border-amber-300 bg-amber-50 text-amber-700":"border-slate-300 bg-slate-50 text-slate-700",c=m=>m==="success"?"border-emerald-200 bg-emerald-50":m==="warning"?"border-amber-200 bg-amber-50":m==="danger"?"border-red-200 bg-red-50":m==="info"?"border-sky-200 bg-sky-50":"border-border bg-background",x=m=>m==="unsupported"?"border-amber-300 bg-amber-50 text-amber-700":m==="unavailable"?"border-red-300 bg-red-50 text-red-700":"border-emerald-300 bg-emerald-50 text-emerald-700",h=m=>m==="pass"?"border-emerald-200 bg-emerald-50 text-emerald-700":m==="warn"?"border-amber-200 bg-amber-50 text-amber-700":m==="fail"?"border-red-200 bg-red-50 text-red-700":"border-sky-200 bg-sky-50 text-sky-700";return(m,_)=>{var p,S,l,a;const $=xe,b=Se;return m.section?(f(),g("div",oo,[e("div",ao,[e("div",null,[e("h3",io,i(m.section.title),1),e("p",ro,i(m.section.subtitle),1)]),w($,{class:oe(x(m.section.status)),variant:"outline"},{default:N(()=>[E(i(m.section.status),1)]),_:1},8,["class"])]),m.section.statusMessage?(f(),g("div",{key:0,class:oe(["border rounded-lg p-3 text-sm",x(m.section.status)])},i(m.section.statusMessage),3)):O("",!0),(p=m.section.actions)!=null&&p.length?(f(),g("div",lo,[(f(!0),g(H,null,z(m.section.actions,d=>(f(),J($,{key:d.id,class:oe(v(d.state)),variant:"outline"},{default:N(()=>[E(i(d.label)+" · "+i(d.state),1)]),_:2},1032,["class"]))),128))])):O("",!0),(S=m.section.cards)!=null&&S.length?(f(),g("div",uo,[(f(!0),g(H,null,z(m.section.cards,d=>(f(),g("div",{key:d.id,class:oe(["h-full border rounded-lg p-2.5 space-y-1.5",c(d.tone)])},[e("p",co,i(d.label),1),e("p",mo,i(d.value),1),d.helperText?(f(),g("p",po,i(d.helperText),1)):O("",!0)],2))),128))])):O("",!0),(l=m.section.details)!=null&&l.length?(f(),g("div",fo,[(f(!0),g(H,null,z(m.section.details,d=>(f(),g("div",{key:`${d.label}-${d.value}`,class:oe(["border rounded-lg p-2.5 space-y-1",c(d.tone)])},[e("p",go,i(d.label),1),e("p",vo,i(d.value),1),d.helperText?(f(),g("p",bo,i(d.helperText),1)):O("",!0)],2))),128))])):O("",!0),(a=m.section.checks)!=null&&a.length?(f(),g("div",_o,[(f(!0),g(H,null,z(m.section.checks,d=>(f(),g("div",{key:d.id,class:oe(["border rounded-lg p-3 text-sm",h(d.status)])},[e("p",ho,i(d.label),1),e("p",yo,i(d.detail),1)],2))),128))])):O("",!0),(f(!0),g(H,null,z(t(s),d=>(f(),g("div",{key:d.id,class:"space-y-1.5"},[e("div",null,[e("h4",xo,i(d.title),1),d.description?(f(),g("p",$o,i(d.description),1)):O("",!0)]),e("div",{class:"max-h-[360px]",style:Ie({height:`${o(d.rows.length)}px`})},[w(b,{"column-defs":t(pe)({columns:t(qe)(d.columns.map(T=>T.key)),rows:d.rows,columnKeyBy:"field"}),"row-data":t(fe)(d.rows),"column-types":t(ge),class:"h-full border rounded-md"},null,8,["column-defs","row-data","column-types"])],4),d.emptyMessage&&d.rows.length===0?(f(),g("p",So,i(d.emptyMessage),1)):O("",!0)]))),128))])):O("",!0)}}}),Lo=5e3;function Ro(n){const r=D(null),u=D("overview"),s=D(!0),o=D(""),v=D(null),c=D(!1),x=D(!1),h=I(()=>!!n.value),m=D(!0);Ce(()=>{m.value=!1}),Te(()=>{m.value=!0});const _=()=>{v.value=null,r.value=null,o.value="",u.value="overview"},$=async(d={})=>{var T,j;if(!h.value)return _(),null;d.silent||(x.value=!0);try{v.value=null;const R=await $fetch("/api/instance-insights/view",{method:"POST",body:{...ne(n.value)}});return r.value=R,R.sections.some(F=>F.id===u.value)||(u.value=((T=R.sections[0])==null?void 0:T.id)||"overview"),R}catch(R){const F=((j=R==null?void 0:R.data)==null?void 0:j.message)||(R==null?void 0:R.message)||(R==null?void 0:R.statusMessage)||"Failed to fetch instance insights";return v.value=F,null}finally{d.silent||(x.value=!1)}},b=async(d=u.value,T={})=>$(T),p=async(d={})=>$(d),S=async()=>{if(!h.value){_();return}c.value=!0,await $(),c.value=!1};re(()=>n.value,async d=>{if(!d){_();return}await S()},{immediate:!0});const{pause:l,resume:a}=Le(async()=>{!h.value||!m.value||await $({silent:!0})},Lo,{immediate:!1});return re(()=>s.value,d=>{d?a():l()},{immediate:!0}),{view:r,activeSection:u,autoRefresh:s,configurationSearch:o,error:v,isInitialLoading:c,isViewLoading:x,refreshSection:b,refreshAll:p}}const Ao={class:"flex flex-col h-full p-3 gap-3 overflow-hidden"},Po={class:"flex flex-col lg:flex-row lg:items-start lg:justify-between border rounded-lg p-3 gap-3 bg-background"},Do={class:"space-y-2"},Bo={class:"space-y-1"},No={class:"flex items-center gap-2"},Eo={class:"text-sm text-muted-foreground flex items-center gap-0.5"},Mo={class:"flex items-center gap-0.5"},Oo={class:"font-medium text-foreground"},Fo={key:0,class:"flex items-center gap-1.5 mt-0.5"},Vo={key:0,class:"flex gap-2 flex-wrap"},Ho={class:"flex items-center gap-2 flex-wrap"},zo={class:"text-xs flex items-center gap-2"},jo={class:"flex items-center justify-between gap-2"},Uo={class:"text-xs text-muted-foreground"},Ko={key:0,class:"border rounded-lg p-3 bg-background"},Go={class:"relative"},Qo={key:1,class:"border border-red-300 bg-red-50 text-red-700 rounded-lg p-3 text-sm"},qo={key:2,class:"border rounded-lg p-6 flex items-center justify-center gap-2 text-muted-foreground"},Xo={key:3,class:"flex-1 overflow-y-auto border rounded-lg p-3 bg-background"},Yo=X({__name:"MultiDbInstanceInsightsPanel",props:{dbConnectionString:{},databaseName:{},dbType:{}},setup(n){const r=$e(),{selectedConnection:u}=je(r),{view:s,activeSection:o,autoRefresh:v,configurationSearch:c,error:x,isInitialLoading:h,isViewLoading:m,refreshSection:_,refreshAll:$}=Ro(u),b=I(()=>{var l;return((l=s.value)==null?void 0:l.sections.find(a=>a.id===o.value))||null}),p=I(()=>{var l,a;return((l=b.value)==null?void 0:l.capturedAt)||((a=s.value)==null?void 0:a.capturedAt)||null}),S=l=>l==="supported"?"border-emerald-300 bg-emerald-50 text-emerald-700":l==="conditional"?"border-amber-300 bg-amber-50 text-amber-700":"border-slate-300 bg-slate-50 text-slate-700";return(l,a)=>{var M,V,y,L,U;const d=me,T=xe,j=Ae,R=ce,F=Be,K=De,Q=Pe,k=ze;return f(),g("div",Ao,[e("div",Po,[e("div",Do,[e("div",Bo,[e("div",No,[w(d,{name:"hugeicons:database",class:"size-5 text-primary"}),a[4]||(a[4]=e("h2",{class:"text-base font-medium"},"Instance Insights",-1))]),e("div",Eo,[a[5]||(a[5]=E(" connection: ")),e("div",Mo,[l.dbType?(f(),J(Re((M=t(Ue)(l.dbType))==null?void 0:M.icon),{key:0,class:"size-4!"})):O("",!0),e("span",Oo,i(l.databaseName),1)])]),(V=t(s))!=null&&V.version?(f(),g("div",Fo,[w(T,{variant:"outline",class:"text-xxs h-5 px-1.5 font-normal"},{default:N(()=>[E(i(l.dbType===t(ue).MARIADB?"MariaDB":l.dbType===t(ue).ORACLE?"Oracle":l.dbType===t(ue).SQLITE3?"SQLite":"MySQL")+" "+i(t(s).version),1)]),_:1})])):O("",!0)]),(L=(y=t(s))==null?void 0:y.actions)!=null&&L.length?(f(),g("div",Vo,[(f(!0),g(H,null,z(t(s).actions,A=>(f(),J(T,{key:A.id,class:oe(S(A.state)),variant:"outline"},{default:N(()=>[E(i(A.label)+" · "+i(A.state),1)]),_:2},1032,["class"]))),128))])):O("",!0)]),e("div",Ho,[e("div",zo,[w(j,{id:"insights-auto-refresh","model-value":t(v),"onUpdate:modelValue":a[0]||(a[0]=A=>le(v)?v.value=A:null),class:"cursor-pointer"},null,8,["model-value"]),a[6]||(a[6]=e("label",{for:"insights-auto-refresh",class:"cursor-pointer"}," Auto refresh ",-1))]),w(R,{variant:"outline",size:"sm",disabled:t(h)||t(m),class:"font-normal",onClick:a[1]||(a[1]=A=>t($)())},{default:N(()=>[w(d,{name:"hugeicons:redo",class:"size-4"}),a[7]||(a[7]=E(" Refresh All "))]),_:1},8,["disabled"])])]),e("div",jo,[w(Q,{modelValue:t(o),"onUpdate:modelValue":a[2]||(a[2]=A=>le(o)?o.value=A:null),class:"gap-0 flex-1 min-w-0"},{default:N(()=>[w(K,{size:"sm",class:"max-w-full overflow-x-auto justify-start!"},{default:N(()=>{var A;return[(f(!0),g(H,null,z(((A=t(s))==null?void 0:A.sections)||[],P=>(f(),J(F,{size:"xs",key:P.id,value:P.id,class:"rounded-sm cursor-pointer min-w-fit shrink-0",onClick:q=>t(_)(P.id,{silent:!0})},{default:N(()=>[E(i(P.title),1)]),_:2},1032,["value","onClick"]))),128))]}),_:1})]),_:1},8,["modelValue"]),e("div",Uo," Last updated: "+i(t(he)(t(p))),1)]),(U=t(b))!=null&&U.searchable?(f(),g("div",Ko,[e("div",Go,[w(d,{name:"hugeicons:search-01",class:"size-4 absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground"}),w(k,{modelValue:t(c),"onUpdate:modelValue":a[3]||(a[3]=A=>le(c)?c.value=A:null),type:"text",placeholder:t(b).searchPlaceholder||"Search...",class:"h-8 w-full pl-8 pr-3"},null,8,["modelValue","placeholder"])])])):O("",!0),t(x)?(f(),g("div",Qo,i(t(x)),1)):O("",!0),t(h)&&!t(s)?(f(),g("div",qo,[w(d,{name:"hugeicons:redo",class:"size-4 animate-spin"}),a[8]||(a[8]=E(" Loading instance insights... "))])):(f(),g("div",Xo,[w(To,{section:t(b),search:t(c)},null,8,["section","search"])]))])}}}),Wo={class:"space-y-4"},Jo={class:"grid gap-3 md:grid-cols-2"},Zo={class:"rounded-lg border p-3"},ea={class:"mt-1 text-lg font-medium"},ta={class:"rounded-lg border p-3"},sa={class:"mt-1 text-lg font-medium"},na={key:0,class:"rounded-lg border p-3"},oa={class:"mt-3 space-y-2 text-xs"},aa={class:"rounded-lg border p-3"},ia={class:"mt-3 space-y-2 text-xs"},ra={class:"flex items-start justify-between gap-3"},la={class:"font-medium"},da={class:"text-muted-foreground"},ua={class:"text-muted-foreground"},ca=X({__name:"RedisClientsSection",props:{clients:{},isActionLoading:{type:Boolean}},emits:["kill-client"],setup(n,{emit:r}){const u=r,s=new Intl.NumberFormat;function o(v){return v==null||v===""?"0":s.format(Number(v))}return(v,c)=>{var h,m,_,$,b;const x=ce;return f(),g("div",Wo,[e("div",Jo,[e("div",Zo,[c[0]||(c[0]=e("p",{class:"text-xs text-muted-foreground"},"Connected clients",-1)),e("p",ea,i(o((h=v.clients)==null?void 0:h.connectedClients)),1)]),e("div",ta,[c[1]||(c[1]=e("p",{class:"text-xs text-muted-foreground"},"Suspicious clients",-1)),e("p",sa,i(o((((m=v.clients)==null?void 0:m.suspiciousClients)||[]).length)),1)])]),(((_=v.clients)==null?void 0:_.suspiciousClients)||[]).length?(f(),g("div",na,[c[2]||(c[2]=e("h3",{class:"text-sm font-medium"},"Suspicious clients",-1)),e("div",oa,[(f(!0),g(H,null,z((($=v.clients)==null?void 0:$.suspiciousClients)||[],p=>(f(),g("div",{key:`${p.clientId}-${p.reason}`,class:"rounded-md bg-muted/20 px-3 py-2"},i(p.reason),1))),128))])])):O("",!0),e("div",aa,[c[4]||(c[4]=e("h3",{class:"text-sm font-medium"},"Client list",-1)),e("div",ia,[(f(!0),g(H,null,z(((b=v.clients)==null?void 0:b.clients)||[],p=>(f(),g("div",{key:p.id,class:"rounded-md bg-muted/20 px-3 py-2"},[e("div",ra,[e("div",null,[e("p",la,i(p.addr),1),e("p",da,i(p.name)+" · db "+i(p.db)+" · "+i(p.cmd),1),e("p",ua," age "+i(o(p.ageSeconds))+"s · idle "+i(o(p.idleSeconds))+"s ",1)]),w(x,{size:"sm",variant:"outline",disabled:v.isActionLoading,onClick:S=>u("kill-client",p.id)},{default:N(()=>c[3]||(c[3]=[E(" Kill client ")])),_:2},1032,["disabled","onClick"])])]))),128))])])])}}}),ma={class:"space-y-2"},pa={class:"text-muted-foreground"},fa=X({__name:"RedisConfigSection",props:{config:{}},setup(n){return(r,u)=>(f(),g("div",ma,[(f(!0),g(H,null,z(r.config||[],s=>(f(),g("div",{key:s.name,class:"flex items-center justify-between rounded-md border px-3 py-2 text-sm"},[e("span",null,i(s.name),1),e("span",pa,i(s.value||"not set"),1)]))),128))]))}}),ga={class:"space-y-4"},va={class:"grid gap-3 md:grid-cols-4"},ba={class:"rounded-lg border p-3"},_a={class:"mt-1 text-lg font-medium"},ha={class:"rounded-lg border p-3"},ya={class:"mt-1 text-lg font-medium"},xa={class:"rounded-lg border p-3"},$a={class:"mt-1 text-lg font-medium"},Sa={class:"rounded-lg border p-3"},wa={class:"mt-1 text-lg font-medium"},ka={class:"grid gap-4 lg:grid-cols-2"},Ia={class:"rounded-lg border p-3"},Ca={class:"mt-3 space-y-2 text-sm"},Ta={class:"text-muted-foreground"},La={class:"rounded-lg border p-3"},Ra={class:"mt-3 space-y-2 text-sm"},Aa={class:"text-muted-foreground"},Pa={class:"rounded-lg border p-3"},Da={class:"mt-3 flex flex-wrap gap-2"},Ba={class:"mt-3 text-xs text-muted-foreground"},Na=X({__name:"RedisKeyspaceSection",props:{keyspace:{}},setup(n){const r=new Intl.NumberFormat;function u(s){return s==null||s===""?"0":r.format(Number(s))}return(s,o)=>{var c,x,h,m,_,$,b,p;const v=xe;return f(),g("div",ga,[e("div",va,[e("div",ba,[o[0]||(o[0]=e("p",{class:"text-xs text-muted-foreground"},"Expired key count",-1)),e("p",_a,i(u((c=s.keyspace)==null?void 0:c.expiredKeyCount)),1)]),e("div",ha,[o[1]||(o[1]=e("p",{class:"text-xs text-muted-foreground"},"Avg TTL",-1)),e("p",ya,i(u((x=s.keyspace)==null?void 0:x.avgTtl)),1)]),e("div",xa,[o[2]||(o[2]=e("p",{class:"text-xs text-muted-foreground"},"Keys without TTL",-1)),e("p",$a,i(u((h=s.keyspace)==null?void 0:h.keysWithoutTtl)),1)]),e("div",Sa,[o[3]||(o[3]=e("p",{class:"text-xs text-muted-foreground"},"Sampled keys",-1)),e("p",wa,i(u((m=s.keyspace)==null?void 0:m.sampledKeys)),1)])]),e("div",ka,[e("div",Ia,[o[4]||(o[4]=e("h3",{class:"text-sm font-medium"},"Databases",-1)),e("div",Ca,[(f(!0),g(H,null,z(((_=s.keyspace)==null?void 0:_.databases)||[],S=>(f(),g("div",{key:S.database,class:"flex items-center justify-between rounded-md bg-muted/20 px-3 py-2"},[e("span",null,i(S.database),1),e("span",Ta,i(u(S.keyCount))+" keys · "+i(u(S.expires))+" expiring · avg TTL "+i(u(S.avgTtl)),1)]))),128))])]),e("div",La,[o[5]||(o[5]=e("h3",{class:"text-sm font-medium"},"Top prefixes",-1)),e("div",Ra,[(f(!0),g(H,null,z((($=s.keyspace)==null?void 0:$.topPrefixes)||[],S=>(f(),g("div",{key:S.prefix,class:"flex items-center justify-between rounded-md bg-muted/20 px-3 py-2"},[e("span",null,i(S.prefix),1),e("span",Aa,i(u(S.keyCount))+" keys ",1)]))),128))])])]),e("div",Pa,[o[6]||(o[6]=e("h3",{class:"text-sm font-medium"},"Key type distribution",-1)),e("div",Da,[(f(!0),g(H,null,z(((b=s.keyspace)==null?void 0:b.keyTypeDistribution)||[],S=>(f(),J(v,{key:S.type,variant:"outline"},{default:N(()=>[E(i(S.type)+" · "+i(u(S.count)),1)]),_:2},1024))),128))]),e("p",Ba,i((p=s.keyspace)==null?void 0:p.hotKeysNote),1)])])}}}),Ea={class:"space-y-4"},Ma={class:"grid gap-3 md:grid-cols-2 xl:grid-cols-4"},Oa={class:"rounded-lg border p-3"},Fa={class:"mt-1 text-lg font-medium"},Va={class:"rounded-lg border p-3"},Ha={class:"mt-1 text-lg font-medium"},za={class:"rounded-lg border p-3"},ja={class:"mt-1 text-lg font-medium"},Ua={class:"rounded-lg border p-3"},Ka={class:"mt-1 text-lg font-medium"},Ga={class:"grid gap-4 lg:grid-cols-2"},Qa={class:"rounded-lg border p-3"},qa={class:"mt-3 space-y-2 text-sm"},Xa={class:"text-muted-foreground"},Ya={class:"rounded-lg border p-3"},Wa={class:"mt-3 space-y-2 text-sm"},Ja={class:"flex items-center justify-between gap-2"},Za={class:"truncate"},ei={class:"mt-1 text-xs text-muted-foreground"},ti=X({__name:"RedisMemorySection",props:{memory:{}},setup(n){const r=new Intl.NumberFormat;function u(s){return s==null||s===""?"0":r.format(Number(s))}return(s,o)=>{var x,h,m,_,$,b,p,S;const v=Ne,c=xe;return f(),g("div",Ea,[e("div",Ma,[e("div",Oa,[o[0]||(o[0]=e("p",{class:"text-xs text-muted-foreground"},"Used memory",-1)),e("p",Fa,i((x=s.memory)==null?void 0:x.usedMemoryHuman),1)]),e("div",Va,[o[1]||(o[1]=e("p",{class:"text-xs text-muted-foreground"},"Peak memory",-1)),e("p",Ha,i((h=s.memory)==null?void 0:h.usedMemoryPeakHuman),1)]),e("div",za,[o[2]||(o[2]=e("p",{class:"text-xs text-muted-foreground"},"Fragmentation",-1)),e("p",ja,i((m=s.memory)==null?void 0:m.memoryFragmentationRatio.toFixed(2)),1)]),e("div",Ua,[o[3]||(o[3]=e("p",{class:"text-xs text-muted-foreground"},"Maxmemory / policy",-1)),e("p",Ka,i((_=s.memory)==null?void 0:_.maxmemoryHuman)+" · "+i(($=s.memory)==null?void 0:$.maxmemoryPolicy),1)])]),(f(!0),g(H,null,z(((b=s.memory)==null?void 0:b.warnings)||[],l=>(f(),J(v,{key:l,variant:"secondary"},{default:N(()=>[E(i(l),1)]),_:2},1024))),128)),e("div",Ga,[e("div",Qa,[o[4]||(o[4]=e("h3",{class:"text-sm font-medium"},"Top prefixes by memory",-1)),e("div",qa,[(f(!0),g(H,null,z(((p=s.memory)==null?void 0:p.topPrefixesByMemory)||[],l=>(f(),g("div",{key:l.prefix,class:"flex items-center justify-between rounded-md bg-muted/20 px-3 py-2"},[e("span",null,i(l.prefix),1),e("span",Xa,i(u(l.keyCount))+" keys · "+i(u(l.memoryBytes))+" B ",1)]))),128))])]),e("div",Ya,[o[5]||(o[5]=e("h3",{class:"text-sm font-medium"},"Big keys detector",-1)),e("div",Wa,[(f(!0),g(H,null,z(((S=s.memory)==null?void 0:S.bigKeys)||[],l=>(f(),g("div",{key:l.key,class:"rounded-md bg-muted/20 px-3 py-2"},[e("div",Ja,[e("span",Za,i(l.key),1),w(c,{variant:"outline"},{default:N(()=>[E(i(l.type),1)]),_:2},1024)]),e("p",ei," TTL "+i(l.ttl>=0?l.ttl:"persisted")+" · "+i(u(l.memoryBytes))+" B ",1)]))),128))])])])])}}}),si={class:"space-y-4"},ni={class:"grid gap-3 md:grid-cols-2 xl:grid-cols-4"},oi={class:"text-xs text-muted-foreground"},ai={class:"mt-1 text-lg font-medium"},ii=X({__name:"RedisOverviewSection",props:{overview:{}},setup(n){const r=n,u=new Intl.NumberFormat;function s(c){return c==null||c===""?"0":u.format(Number(c))}function o(c){return`${(c*100).toFixed(1)}%`}const v=I(()=>{const c=r.overview;return c?[{label:"Redis version",value:c.redisVersion},{label:"Mode",value:c.mode},{label:"Uptime",value:Ye(c.uptimeSeconds)},{label:"Connected clients",value:s(c.connectedClients)},{label:"Used memory",value:c.usedMemoryHuman},{label:"Total keys",value:s(c.totalKeys)},{label:"Hit rate",value:o(c.hitRate)},{label:"Ops/sec",value:s(c.opsPerSec)},{label:"Evicted keys",value:s(c.evictedKeys)},{label:"Expired keys",value:s(c.expiredKeys)},{label:"Rejected connections",value:s(c.rejectedConnections)}]:[]});return(c,x)=>(f(),g("div",si,[e("div",ni,[(f(!0),g(H,null,z(t(v),h=>(f(),g("div",{key:h.label,class:"rounded-lg border p-3"},[e("p",oi,i(h.label),1),e("p",ai,i(h.value),1)]))),128))])]))}}),ri={class:"space-y-4"},li={class:"grid gap-3 md:grid-cols-3"},di={class:"rounded-lg border p-3"},ui={class:"mt-1 text-lg font-medium"},ci={class:"rounded-lg border p-3"},mi={class:"mt-1 text-lg font-medium"},pi={class:"rounded-lg border p-3"},fi={class:"mt-1 text-lg font-medium"},gi={class:"rounded-lg border p-3"},vi={class:"mt-3 whitespace-pre-wrap text-xs text-muted-foreground"},bi={class:"grid gap-4 lg:grid-cols-2"},_i={class:"rounded-lg border p-3"},hi={class:"mt-3 space-y-2 text-xs"},yi={class:"flex items-center justify-between gap-2"},xi={class:"font-medium"},$i={class:"mt-1 text-muted-foreground"},Si={class:"rounded-lg border p-3"},wi={class:"mt-3 space-y-2 text-xs"},ki={class:"text-muted-foreground"},Ii={class:"rounded-lg border p-3"},Ci={class:"mt-3 space-y-2 text-xs"},Ti={key:0,class:"text-muted-foreground"},Li={class:"text-muted-foreground"},Ri=X({__name:"RedisPerformanceSection",props:{performance:{}},setup(n){const r=new Intl.NumberFormat;function u(s){return s==null||s===""?"0":r.format(Number(s))}return(s,o)=>{var v,c,x,h,m,_,$,b;return f(),g("div",ri,[e("div",li,[e("div",di,[o[0]||(o[0]=e("p",{class:"text-xs text-muted-foreground"},"Ops/sec",-1)),e("p",ui,i(u((v=s.performance)==null?void 0:v.instantaneousOpsPerSec)),1)]),e("div",ci,[o[1]||(o[1]=e("p",{class:"text-xs text-muted-foreground"},"Total commands",-1)),e("p",mi,i(u((c=s.performance)==null?void 0:c.totalCommandsProcessed)),1)]),e("div",pi,[o[2]||(o[2]=e("p",{class:"text-xs text-muted-foreground"},"Blocked clients",-1)),e("p",fi,i(u((x=s.performance)==null?void 0:x.blockedClients)),1)])]),e("div",gi,[o[3]||(o[3]=e("h3",{class:"text-sm font-medium"},"Latency doctor",-1)),e("pre",vi,i(((h=s.performance)==null?void 0:h.latencyDoctor)||"No latency doctor output available."),1)]),e("div",bi,[e("div",_i,[o[4]||(o[4]=e("h3",{class:"text-sm font-medium"},"Slowlog",-1)),e("div",hi,[(f(!0),g(H,null,z(((m=s.performance)==null?void 0:m.slowlog)||[],p=>(f(),g("div",{key:p.id,class:"rounded-md bg-muted/20 px-3 py-2"},[e("div",yi,[e("span",xi,i(p.command||"unknown command"),1),e("span",null,i(u(p.durationMicros))+" µs",1)]),e("p",$i,i(p.clientAddr||"n/a")+" · "+i(p.timestamp||"unknown time"),1)]))),128))])]),e("div",Si,[o[5]||(o[5]=e("h3",{class:"text-sm font-medium"},"Command stats",-1)),e("div",wi,[(f(!0),g(H,null,z(((_=s.performance)==null?void 0:_.commandStats)||[],p=>(f(),g("div",{key:p.command,class:"flex items-center justify-between rounded-md bg-muted/20 px-3 py-2"},[e("span",null,i(p.command),1),e("span",ki,i(u(p.calls))+" calls · "+i(p.usecPerCall.toFixed(2))+" µs/call ",1)]))),128))])])]),e("div",Ii,[o[6]||(o[6]=e("h3",{class:"text-sm font-medium"},"Long-running Lua scripts",-1)),e("div",Ci,[((($=s.performance)==null?void 0:$.longRunningLuaScripts)||[]).length?O("",!0):(f(),g("div",Ti," No active Lua script clients detected. ")),(f(!0),g(H,null,z(((b=s.performance)==null?void 0:b.longRunningLuaScripts)||[],p=>(f(),g("div",{key:p.id,class:"flex items-center justify-between rounded-md bg-muted/20 px-3 py-2"},[e("span",null,i(p.addr),1),e("span",Li,i(p.cmd)+" · age "+i(u(p.ageSeconds))+"s ",1)]))),128))])])])}}}),Ai={class:"space-y-4"},Pi={class:"grid gap-3 md:grid-cols-2 xl:grid-cols-4"},Di={class:"rounded-lg border p-3"},Bi={class:"mt-1 text-lg font-medium"},Ni={class:"rounded-lg border p-3"},Ei={class:"mt-1 text-lg font-medium"},Mi={class:"rounded-lg border p-3"},Oi={class:"mt-1 text-lg font-medium"},Fi={class:"rounded-lg border p-3"},Vi={class:"mt-1 text-lg font-medium"},Hi={class:"rounded-lg border p-3 text-sm text-muted-foreground space-y-1"},zi={key:0},ji=X({__name:"RedisPersistenceSection",props:{persistence:{}},setup(n){const r=new Intl.NumberFormat;function u(s){return s==null||s===""?"0":r.format(Number(s))}return(s,o)=>{var c,x,h,m,_,$,b,p,S;const v=Ne;return f(),g("div",Ai,[e("div",Pi,[e("div",Di,[o[0]||(o[0]=e("p",{class:"text-xs text-muted-foreground"},"RDB enabled",-1)),e("p",Bi,i((c=s.persistence)!=null&&c.rdbEnabled?"Yes":"No"),1)]),e("div",Ni,[o[1]||(o[1]=e("p",{class:"text-xs text-muted-foreground"},"AOF enabled",-1)),e("p",Ei,i((x=s.persistence)!=null&&x.aofEnabled?"Yes":"No"),1)]),e("div",Mi,[o[2]||(o[2]=e("p",{class:"text-xs text-muted-foreground"},"AOF rewrite",-1)),e("p",Oi,i((h=s.persistence)!=null&&h.aofRewriteInProgress?"In progress":"Idle"),1)]),e("div",Fi,[o[3]||(o[3]=e("p",{class:"text-xs text-muted-foreground"},"Changes since save",-1)),e("p",Vi,i(u((m=s.persistence)==null?void 0:m.changesSinceLastSave)),1)])]),(f(!0),g(H,null,z(((_=s.persistence)==null?void 0:_.warnings)||[],l=>(f(),J(v,{key:l,variant:"secondary"},{default:N(()=>[E(i(l),1)]),_:2},1024))),128)),e("div",Hi,[e("p",null," Last save status: "+i((($=s.persistence)==null?void 0:$.lastSaveStatus)||"unknown"),1),e("p",null," Last save time: "+i(((b=s.persistence)==null?void 0:b.lastSaveTime)||"unknown"),1),e("p",null," AOF last rewrite status: "+i(((p=s.persistence)==null?void 0:p.aofLastRewriteStatus)||"unknown"),1),(S=s.persistence)!=null&&S.lastBgsaveError?(f(),g("p",zi," Last bgsave error: "+i(s.persistence.lastBgsaveError),1)):O("",!0)])])}}}),Ui={class:"space-y-4"},Ki={class:"grid gap-3 md:grid-cols-2 xl:grid-cols-4"},Gi={class:"rounded-lg border p-3"},Qi={class:"mt-1 text-lg font-medium"},qi={class:"rounded-lg border p-3"},Xi={class:"mt-1 text-lg font-medium"},Yi={class:"rounded-lg border p-3"},Wi={class:"mt-1 text-lg font-medium"},Ji={class:"rounded-lg border p-3"},Zi={class:"mt-1 text-lg font-medium"},er={class:"rounded-lg border p-3 text-sm text-muted-foreground space-y-1"},tr={class:"rounded-lg border p-3"},sr={class:"mt-3 space-y-2 text-xs"},nr={key:0,class:"text-muted-foreground"},or={class:"text-muted-foreground"},ar=X({__name:"RedisReplicationSection",props:{replication:{}},setup(n){const r=new Intl.NumberFormat;function u(s){return s==null||s===""?"0":r.format(Number(s))}return(s,o)=>{var v,c,x,h,m,_,$,b,p,S,l;return f(),g("div",Ui,[e("div",Ki,[e("div",Gi,[o[0]||(o[0]=e("p",{class:"text-xs text-muted-foreground"},"Role",-1)),e("p",Qi,i(((v=s.replication)==null?void 0:v.role)||"unknown"),1)]),e("div",qi,[o[1]||(o[1]=e("p",{class:"text-xs text-muted-foreground"},"Connected replicas",-1)),e("p",Xi,i(u((c=s.replication)==null?void 0:c.connectedReplicas)),1)]),e("div",Yi,[o[2]||(o[2]=e("p",{class:"text-xs text-muted-foreground"},"Master link status",-1)),e("p",Wi,i(((x=s.replication)==null?void 0:x.masterLinkStatus)||"n/a"),1)]),e("div",Ji,[o[3]||(o[3]=e("p",{class:"text-xs text-muted-foreground"},"Cluster state",-1)),e("p",Zi,i(((h=s.replication)==null?void 0:h.clusterState)||((m=s.replication)!=null&&m.clusterEnabled?"enabled":"disabled")),1)])]),e("div",er,[e("p",null,"Replication lag: "+i(((_=s.replication)==null?void 0:_.replicationLag)??"n/a"),1),e("p",null,"Sentinel masters: "+i((($=s.replication)==null?void 0:$.sentinelMasters)??"n/a"),1),e("p",null," Cluster slots assigned: "+i(((b=s.replication)==null?void 0:b.clusterSlotsAssigned)??"n/a"),1),e("p",null,"Cluster known nodes: "+i(((p=s.replication)==null?void 0:p.clusterKnownNodes)??"n/a"),1)]),e("div",tr,[o[4]||(o[4]=e("h3",{class:"text-sm font-medium"},"Replicas",-1)),e("div",sr,[(((S=s.replication)==null?void 0:S.replicas)||[]).length?O("",!0):(f(),g("div",nr," No replica nodes reported. ")),(f(!0),g(H,null,z(((l=s.replication)==null?void 0:l.replicas)||[],a=>(f(),g("div",{key:a.id,class:"flex items-center justify-between rounded-md bg-muted/20 px-3 py-2"},[e("span",null,i(a.addr),1),e("span",or,i(a.state)+" · lag "+i(a.lag??"n/a"),1)]))),128))])])])}}}),ir=5e3;function rr(n){const r=D("overview"),u=D(!0),s=D(null),o=D(!1),v=D(!1),c=D(!1),x=D(null),h=D(!0),m=I(()=>!!n.connection.value);Ce(()=>{h.value=!1}),Te(()=>{h.value=!0});const _=async(l=!1)=>{var a;if(!n.connection.value)return x.value=null,null;l||(v.value=!0);try{s.value=null;const d=await $fetch("/api/redis/instance-insights/overview",{method:"POST",body:{...ne(n.connection.value),method:n.connection.value.method,databaseIndex:n.databaseIndex.value}});return x.value=d,d}catch(d){return s.value=((a=d==null?void 0:d.data)==null?void 0:a.message)||(d==null?void 0:d.message)||(d==null?void 0:d.statusMessage)||"Failed to fetch Redis instance insights.",null}finally{l||(v.value=!1)}},$=async l=>{var a;if(!n.connection.value)return!1;c.value=!0;try{const d=await $fetch("/api/redis/instance-insights/kill-client",{method:"POST",body:{...ne(n.connection.value),method:n.connection.value.method,databaseIndex:n.databaseIndex.value,clientId:l}});return d.success?(be("Redis client terminated",{description:d.message}),await _(!0),!0):(be("Failed to terminate client",{description:d.message}),!1)}catch(d){return be("Failed to terminate client",{description:((a=d==null?void 0:d.data)==null?void 0:a.message)||(d==null?void 0:d.message)||"The Redis client could not be terminated."}),!1}finally{c.value=!1}},b=async()=>{await _()};re([()=>n.connection.value,()=>n.databaseIndex.value],async([l])=>{if(!l){x.value=null;return}o.value=!0,await _(),o.value=!1},{immediate:!0});const{pause:p,resume:S}=Le(async()=>{!m.value||!h.value||await _(!0)},ir,{immediate:!1});return re(()=>u.value,l=>{l?S():p()},{immediate:!0}),{activeSection:r,autoRefresh:u,error:s,isInitialLoading:o,isLoading:v,isActionLoading:c,insights:x,refresh:b,killClient:$}}const lr={class:"flex h-full flex-col gap-3 overflow-hidden p-3"},dr={class:"flex items-center gap-2 text-xs"},ur={key:1,class:"flex flex-1 items-center justify-center gap-2 rounded-lg border bg-background text-muted-foreground"},cr={key:2,class:"flex-1 overflow-y-auto rounded-lg border bg-background p-3 mt-2"},mr=X({__name:"RedisInstanceInsightsPanel",props:{databaseName:{},databaseIndex:{},databases:{},dbType:{}},emits:["update:databaseIndex"],setup(n,{emit:r}){const u=n,s=r,o=[{id:"overview",label:"Overview"},{id:"keyspace",label:"Keyspace"},{id:"memory",label:"Memory"},{id:"performance",label:"Performance"},{id:"clients",label:"Clients"},{id:"persistence",label:"Persistence"},{id:"replication",label:"Replication / Cluster"},{id:"config",label:"Config"}],v=$e(),c=I(()=>v.selectedConnection),{activeSection:x,autoRefresh:h,error:m,isInitialLoading:_,isLoading:$,isActionLoading:b,insights:p,refresh:S,killClient:l}=rr({connection:c,databaseIndex:I(()=>u.databaseIndex)});return(a,d)=>{const T=Ae,j=me,R=ce,F=Tt,K=Be,Q=De,k=Ne,M=Pe;return f(),g("div",lr,[w(F,{icon:"hugeicons:activity-02",title:"Instance Insights"},{context:N(()=>[a.dbType===t(ue).REDIS?(f(),J(Re("hugeicons:database-sync-01"),{key:0})):O("",!0)]),actions:N(()=>[w(Lt,{compact:"","trigger-id":"redis-instance-insights-db-index","trigger-class":"bg-background",databases:a.databases,"database-index":a.databaseIndex,"onUpdate:databaseIndex":d[0]||(d[0]=V=>s("update:databaseIndex",V))},null,8,["databases","database-index"]),e("div",dr,[w(T,{id:"redis-insights-auto-refresh","model-value":t(h),"onUpdate:modelValue":d[1]||(d[1]=V=>le(h)?h.value=V:null)},null,8,["model-value"]),d[3]||(d[3]=e("label",{for:"redis-insights-auto-refresh",class:"cursor-pointer"}," Auto refresh ",-1))]),w(R,{size:"xxs",variant:"outline",disabled:t($)||t(b),onClick:t(S)},{default:N(()=>[w(j,{name:"hugeicons:redo",class:"size-3.5!"}),d[4]||(d[4]=E(" Refresh "))]),_:1},8,["disabled","onClick"])]),_:1}),w(M,{modelValue:t(x),"onUpdate:modelValue":d[2]||(d[2]=V=>le(x)?x.value=V:null),class:"flex flex-1 min-h-0 flex-col gap-0"},{default:N(()=>{var V,y,L,U,A,P,q,Z;return[w(Q,{size:"sm",class:"max-w-full justify-start! shrink-0 overflow-x-auto"},{default:N(()=>[(f(),g(H,null,z(o,ae=>w(K,{size:"xs",key:ae.id,value:ae.id,class:"min-w-fit shrink-0 cursor-pointer rounded-sm"},{default:N(()=>[E(i(ae.label),1)]),_:2},1032,["value"])),64))]),_:1}),t(m)?(f(),J(k,{key:0,variant:"destructive"},{default:N(()=>[E(i(t(m)),1)]),_:1})):O("",!0),t(_)&&!t(p)?(f(),g("div",ur,[w(j,{name:"hugeicons:redo",class:"size-4 animate-spin"}),d[5]||(d[5]=E(" Loading Redis instance insights... "))])):(f(),g("div",cr,[te(w(ii,{overview:(V=t(p))==null?void 0:V.overview},null,8,["overview"]),[[se,t(x)==="overview"]]),te(w(Na,{keyspace:(y=t(p))==null?void 0:y.keyspace},null,8,["keyspace"]),[[se,t(x)==="keyspace"]]),te(w(ti,{memory:(L=t(p))==null?void 0:L.memory},null,8,["memory"]),[[se,t(x)==="memory"]]),te(w(Ri,{performance:(U=t(p))==null?void 0:U.performance},null,8,["performance"]),[[se,t(x)==="performance"]]),te(w(ca,{clients:(A=t(p))==null?void 0:A.clients,"is-action-loading":t(b),onKillClient:t(l)},null,8,["clients","is-action-loading","onKillClient"]),[[se,t(x)==="clients"]]),te(w(ji,{persistence:(P=t(p))==null?void 0:P.persistence},null,8,["persistence"]),[[se,t(x)==="persistence"]]),te(w(ar,{replication:(q=t(p))==null?void 0:q.replication},null,8,["replication"]),[[se,t(x)==="replication"]]),te(w(fa,{config:(Z=t(p))==null?void 0:Z.config},null,8,["config"]),[[se,t(x)==="config"]])]))]}),_:1},8,["modelValue"])])}}}),pr={class:"h-full"},fr={key:0,class:"h-full p-4 flex flex-col items-center justify-center text-muted-foreground"},Pr=X({__name:"index",setup(n){const r=Ze(),u=$e(),s=et(),{activeTab:o}=je(s),v=I(()=>String(r.params.connectionId||"")),c=I(()=>v.value?u.connections.find(b=>b.id===v.value):null),x=I(()=>{var b;return((b=c.value)==null?void 0:b.connectionString)||""}),h=I(()=>{var b;return(b=c.value)==null?void 0:b.type}),m=I(()=>{var b,p,S;return h.value===ue.REDIS?((b=c.value)==null?void 0:b.name)||"Redis":((p=c.value)==null?void 0:p.database)||((S=c.value)==null?void 0:S.name)||"database"}),_=I(()=>h.value===ue.REDIS?c.value??void 0:void 0),$=Rt({connection:_,mode:"meta"});return re(()=>{var b,p;return(p=(b=o.value)==null?void 0:b.metadata)==null?void 0:p.databaseIndex},b=>{typeof b=="number"&&($.selectedDatabaseIndex.value=b)},{immediate:!0}),(b,p)=>{const S=me;return f(),g("div",pr,[t(c)?t(h)===t(ue).REDIS?(f(),J(mr,{key:1,"database-name":t(m),"database-index":t($).selectedDatabaseIndex.value,databases:t($).databases.value,"db-type":t(h),"onUpdate:databaseIndex":p[0]||(p[0]=l=>t($).selectedDatabaseIndex.value=l)},null,8,["database-name","database-index","databases","db-type"])):t(h)===t(ue).POSTGRES?(f(),J(no,{key:2,"db-connection-string":t(x),"database-name":t(m),"db-type":t(h)},null,8,["db-connection-string","database-name","db-type"])):(f(),J(Yo,{key:3,"db-connection-string":t(x),"database-name":t(m),"db-type":t(h)},null,8,["db-connection-string","database-name","db-type"])):(f(),g("div",fr,[w(S,{name:"hugeicons:plug-socket",class:"size-12 mb-2 opacity-50"}),p[1]||(p[1]=e("p",{class:"text-sm"},"Select a connection to open Instance Insights",-1))]))])}}});export{Pr as default};
@@ -0,0 +1 @@
1
+ import{c as E,aj as Le,bE as ne,d as T,ak as Oe,bV as qe,a0 as Q,aa as fe,k as S,o as c,w as o,E as O,g as e,ab as me,bH as Ne,al as Re,a as Me,r as G,e as h,F as P,f as t,N as q,s as j,z as p,cH as re,t as U,l as B,m as a,n as L,cI as He,A as I,cJ as ze,bJ as Fe,p as Y,j as te,a4 as Ke,cK as je,bj as D,bm as ve,bk as w,_ as Qe,h as Ge,bS as Ye,x as Je,B as N,q as Xe,bi as de,a_ as We,bP as ge,bQ as ye,bR as be,bT as _e,b as Ze,D as ie,bO as et,bA as tt,i as M,bB as st,M as at,bC as ot,X as Z,cL as H,ax as R,bf as lt,bU as nt}from"./C6teO48Y.js";import{_ as rt,a as dt,b as it}from"./CMI-3q_e.js";import{i as ut,_ as ue}from"./BRCvv3op.js";import{i as pt,u as ct,d as ft,a as mt}from"./DG9CsZCx.js";import{C as vt,a as gt,b as yt}from"./D_kY6P5P.js";import{u as bt}from"./B5rxJs06.js";import{_ as F}from"./eQskTKIU.js";import{a as _t,c as z,_ as xt}from"./CKlMKmo6.js";function ht({type:f,defaultValue:r,modelValue:d}){const l=d||r;return d!==void 0||r!==void 0?Array.isArray(l)?"multiple":"single":f??"single"}function Dt({type:f,defaultValue:r,modelValue:d}){return f||ht({type:f,defaultValue:r,modelValue:d})}function kt({type:f,defaultValue:r}){return r!==void 0?r:f==="single"?void 0:[]}function Ct(f,r){const d=E(()=>Dt(f)),l=Le(f,"modelValue",r,{defaultValue:kt(f),passive:f.modelValue===void 0,deep:!0});function g(x){if(d.value==="single")l.value=ne(x,l.value)?void 0:x;else{const b=Array.isArray(l.value)?[...l.value||[]]:[l.value].filter(Boolean);if(ut(b,x)){const n=b.findIndex(i=>ne(i,x));b.splice(n,1)}else b.push(x);l.value=b}}const m=E(()=>d.value==="single");return{modelValue:l,changeModelValue:g,isSingle:m}}const[J,Vt]=fe("AccordionRoot");var St=T({__name:"AccordionRoot",props:{collapsible:{type:Boolean,required:!1,default:!1},disabled:{type:Boolean,required:!1,default:!1},dir:{type:String,required:!1},orientation:{type:String,required:!1,default:"vertical"},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},type:{type:String,required:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1}},emits:["update:modelValue"],setup(f,{emit:r}){const d=f,l=r,{dir:g,disabled:m,unmountOnHide:x}=Oe(d),b=qe(g),{modelValue:n,changeModelValue:i,isSingle:V}=Ct(d,l),{forwardRef:_,currentElement:k}=Q();return Vt({disabled:m,direction:b,orientation:d.orientation,parentElement:k,isSingle:V,collapsible:d.collapsible,modelValue:n,changeModelValue:i,unmountOnHide:x}),(C,u)=>(c(),S(e(me),{ref:e(_),"as-child":C.asChild,as:C.as},{default:o(()=>[O(C.$slots,"default",{modelValue:e(n)})]),_:3},8,["as-child","as"]))}}),wt=St,ee=function(f){return f.Open="open",f.Closed="closed",f}(ee||{});const[se,$t]=fe("AccordionItem");var At=T({__name:"AccordionItem",props:{disabled:{type:Boolean,required:!1},value:{type:String,required:!0},unmountOnHide:{type:Boolean,required:!1,default:void 0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(f,{expose:r}){const d=f,l=J(),g=E(()=>l.isSingle.value?d.value===l.modelValue.value:Array.isArray(l.modelValue.value)&&l.modelValue.value.includes(d.value)),m=E(()=>l.disabled.value||d.disabled),x=E(()=>m.value?"":void 0),b=E(()=>g.value?ee.Open:ee.Closed);r({open:g,dataDisabled:x});const{currentRef:n,currentElement:i}=Q();$t({open:g,dataState:b,disabled:m,dataDisabled:x,triggerId:"",currentRef:n,currentElement:i,value:E(()=>d.value)});function V(_){var v;const k=_.target;if(Array.from(((v=l.parentElement.value)==null?void 0:v.querySelectorAll("[data-reka-collection-item]"))??[]).findIndex($=>$===k)===-1)return null;bt(_,k,l.parentElement.value,{arrowKeyOptions:l.orientation,dir:l.direction.value,focus:!0})}return(_,k)=>(c(),S(e(vt),{"data-orientation":e(l).orientation,"data-disabled":x.value,"data-state":b.value,disabled:m.value,open:g.value,as:d.as,"as-child":d.asChild,"unmount-on-hide":d.unmountOnHide??e(l).unmountOnHide.value,onKeydown:Ne(V,["up","down","left","right","home","end"])},{default:o(()=>[O(_.$slots,"default",{open:g.value})]),_:3},8,["data-orientation","data-disabled","data-state","disabled","open","as","as-child","unmount-on-hide"]))}}),It=At,Et=T({__name:"AccordionContent",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(f){const r=f,d=J(),l=se();return Q(),(g,m)=>(c(),S(e(gt),{role:"region","as-child":r.asChild,as:g.as,"force-mount":r.forceMount,"aria-labelledby":e(l).triggerId,"data-state":e(l).dataState.value,"data-disabled":e(l).dataDisabled.value,"data-orientation":e(d).orientation,style:{"--reka-accordion-content-width":"var(--reka-collapsible-content-width)","--reka-accordion-content-height":"var(--reka-collapsible-content-height)"},onContentFound:m[0]||(m[0]=x=>e(d).changeModelValue(e(l).value.value))},{default:o(()=>[O(g.$slots,"default")]),_:3},8,["as-child","as","force-mount","aria-labelledby","data-state","data-disabled","data-orientation"]))}}),Tt=Et,Bt=T({__name:"AccordionHeader",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"h3"}},setup(f){const r=f,d=J(),l=se();return Q(),(g,m)=>(c(),S(e(me),{as:r.as,"as-child":r.asChild,"data-orientation":e(d).orientation,"data-state":e(l).dataState.value,"data-disabled":e(l).dataDisabled.value},{default:o(()=>[O(g.$slots,"default")]),_:3},8,["as","as-child","data-orientation","data-state","data-disabled"]))}}),Pt=Bt,Ut=T({__name:"AccordionTrigger",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(f){const r=f,d=J(),l=se();l.triggerId||(l.triggerId=Re(void 0,"reka-accordion-trigger"));function g(){const m=d.isSingle.value&&l.open.value&&!d.collapsible;l.disabled.value||m||d.changeModelValue(l.value.value)}return(m,x)=>(c(),S(e(yt),{id:e(l).triggerId,ref:e(l).currentRef,"data-reka-collection-item":"",as:r.as,"as-child":r.asChild,"aria-disabled":e(l).disabled.value||void 0,"aria-expanded":e(l).open.value||!1,"data-disabled":e(l).dataDisabled.value,"data-orientation":e(d).orientation,"data-state":e(l).dataState.value,disabled:e(l).disabled.value,onClick:g},{default:o(()=>[O(m.$slots,"default")]),_:3},8,["id","as","as-child","aria-disabled","aria-expanded","data-disabled","data-orientation","data-state","disabled"]))}}),Lt=Ut;const Ot={key:0,class:"text-sm text-muted-foreground"},qt={key:0,class:"px-2 py-1 text-xs text-muted-foreground select-none"},Nt={role:"listbox","aria-multiselectable":"true",class:"space-y-0.5"},Rt=["aria-selected","aria-disabled"],Mt=["disabled","onClick"],Ht={key:0,viewBox:"0 0 12 12",class:"size-3 fill-current"},zt={class:"flex-1 truncate text-left"},Ft={key:1,class:"px-2 py-3 text-center text-xs text-muted-foreground"},pe=3,Kt=T({__name:"EnvTagPicker",props:{modelValue:{}},emits:["update:modelValue"],setup(f,{emit:r}){const d=f,l=r,g=Me(),m=E(()=>d.modelValue.length>=pe);function x(_){return d.modelValue.includes(_)}function b(_){x(_)?l("update:modelValue",d.modelValue.filter(k=>k!==_)):m.value||l("update:modelValue",[...d.modelValue,_])}const n=E(()=>g.tags.filter(_=>d.modelValue.includes(_.id))),i=G(!1);function V(_){m.value||l("update:modelValue",[...d.modelValue,_.id])}return(_,k)=>{const C=I;return c(),h(P,null,[t(e(rt),null,{default:o(()=>[t(e(dt),{"as-child":""},{default:o(()=>[t(e(q),{type:"button",variant:"outline",class:"h-auto min-h-9 w-full justify-start gap-1 px-2 py-1 flex-wrap"},{default:o(()=>[n.value.length===0?(c(),h("span",Ot,"Assign tags…")):(c(!0),h(P,{key:1},j(n.value,u=>(c(),h("span",{key:u.id,class:"inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs font-medium"},[t(re,{color:u.color,size:"sm"},null,8,["color"]),p(" "+U(u.name),1)]))),128))]),_:1})]),_:1}),t(e(it),{class:"w-56 p-1",align:"start","side-offset":4,"restore-focus":!1},{default:o(()=>[m.value?(c(),h("p",qt," Max "+U(pe)+" tags selected ")):B("",!0),a("ul",Nt,[(c(!0),h(P,null,j(e(g).tags,u=>(c(),h("li",{key:u.id,role:"option","aria-selected":x(u.id),"aria-disabled":m.value&&!x(u.id)},[a("button",{type:"button",class:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-sm transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none disabled:pointer-events-none disabled:opacity-40",disabled:m.value&&!x(u.id),onClick:v=>b(u.id)},[a("span",{class:L(["flex size-4 items-center justify-center rounded-sm border",x(u.id)?"border-primary bg-primary text-primary-foreground":"border-input"])},[x(u.id)?(c(),h("svg",Ht,k[2]||(k[2]=[a("path",{d:"M10 3L5 8.5 2 5.5",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round",fill:"none"},null,-1)]))):B("",!0)],2),t(re,{color:u.color,size:"md"},null,8,["color"]),a("span",zt,U(u.name),1)],8,Mt)],8,Rt))),128))]),e(g).tags.length===0?(c(),h("p",Ft," No tags configured ")):B("",!0),t(e(He),{class:"my-1"}),a("button",{type:"button",class:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-sm text-muted-foreground hover:bg-accent hover:text-foreground transition-colors focus-visible:outline-none focus-visible:bg-accent",onClick:k[0]||(k[0]=u=>i.value=!0)},[t(C,{name:"hugeicons:plus-sign",class:"size-4"}),k[3]||(k[3]=p(" Add new tag "))])]),_:1})]),_:1}),t(ze,{open:i.value,"onUpdate:open":k[1]||(k[1]=u=>i.value=u),onCreated:V},null,8,["open"])],64)}}}),ce=T({__name:"Accordion",props:{collapsible:{type:Boolean},disabled:{type:Boolean},dir:{},orientation:{},unmountOnHide:{type:Boolean},asChild:{type:Boolean},as:{},type:{},modelValue:{},defaultValue:{}},emits:["update:modelValue"],setup(f,{emit:r}){const g=Fe(f,r);return(m,x)=>(c(),S(e(wt),Y({"data-slot":"accordion"},e(g)),{default:o(()=>[O(m.$slots,"default")]),_:3},16))}}),xe=T({__name:"AccordionContent",props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(f){const r=f,d=E(()=>{const{class:l,...g}=r;return g});return(l,g)=>(c(),S(e(Tt),Y({"data-slot":"accordion-content"},d.value,{class:"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm"}),{default:o(()=>[a("div",{class:L(e(te)("pt-0 pb-4",r.class))},[O(l.$slots,"default")],2)]),_:3},16))}}),he=T({__name:"AccordionItem",props:{disabled:{type:Boolean},value:{},unmountOnHide:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(f){const r=f,d=E(()=>{const{class:g,...m}=r;return m}),l=Ke(d);return(g,m)=>(c(),S(e(It),Y({"data-slot":"accordion-item"},e(l),{class:e(te)("border-b last:border-b-0",r.class)}),{default:o(()=>[O(g.$slots,"default")]),_:3},16,["class"]))}}),De=T({__name:"AccordionTrigger",props:{asChild:{type:Boolean},as:{},class:{}},setup(f){const r=f,d=E(()=>{const{class:l,...g}=r;return g});return(l,g)=>(c(),S(e(Pt),{class:"flex"},{default:o(()=>[t(e(Lt),Y({"data-slot":"accordion-trigger"},d.value,{class:e(te)("focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180",r.class)}),{default:o(()=>[O(l.$slots,"default"),O(l.$slots,"icon",{},()=>[t(e(je),{class:"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200"})])]),_:3},16,["class"])]),_:3}))}});function K(f){const r=G(!1);return{isDragging:r,onDragOver:m=>{m.preventDefault(),r.value=!0},onDragLeave:()=>{r.value=!1},onDrop:async m=>{var i;m.preventDefault(),r.value=!1;const x=(i=m.dataTransfer)==null?void 0:i.files;if(!x||x.length===0)return;const b=x[0],n=new FileReader;n.onload=V=>{var k;const _=(k=V.target)==null?void 0:k.result;f&&f(_)},n.readAsText(b)}}}const jt={class:"flex items-center gap-2"},Qt={class:"flex items-center justify-between"},Gt={class:"grid grid-cols-4 gap-4"},Yt={class:"col-span-3 space-y-2"},Jt={class:"space-y-2"},Xt={class:"grid grid-cols-2 gap-4"},Wt={class:"space-y-2"},Zt={class:"space-y-2"},es={class:"relative"},ts=["aria-label"],ss={class:"flex items-center gap-2"},as={class:"space-y-4 pt-2 border-t"},os={class:"flex items-center gap-2"},ls={key:0,class:"space-y-2"},ns=T({__name:"ConnectionSSHTunnel",props:{formData:{}},setup(f){const r=f,{onDragOver:d,onDragLeave:l,onDrop:g,isDragging:m}=K(b=>{r.formData.sshPrivateKey=b}),x=G(!1);return(b,n)=>(c(),S(e(he),{value:"ssh"},{default:o(()=>[t(e(De),{class:"hover:no-underline"},{default:o(()=>[a("div",jt,[t(e(I),{name:"lucide:terminal",class:"size-4 text-primary"}),n[9]||(n[9]=a("span",null,"SSH Tunnel",-1))])]),_:1}),t(e(xe),{class:"space-y-4 pt-4 px-1"},{default:o(()=>[a("div",Qt,[t(e(D),{for:"ssh-enabled"},{default:o(()=>n[10]||(n[10]=[p("Over SSH")])),_:1}),t(e(ve),{id:"ssh-enabled","model-value":b.formData.sshEnabled,"onUpdate:modelValue":n[0]||(n[0]=i=>b.formData.sshEnabled=i)},null,8,["model-value"])]),b.formData.sshEnabled?(c(),h(P,{key:0},[a("div",Gt,[a("div",Yt,[t(e(D),{for:"ssh-host"},{default:o(()=>n[11]||(n[11]=[p("Server")])),_:1}),t(e(w),{id:"ssh-host",placeholder:"e.g. ssh.example.com or 1.2.3.4",modelValue:b.formData.sshHost,"onUpdate:modelValue":n[1]||(n[1]=i=>b.formData.sshHost=i)},null,8,["modelValue"])]),a("div",Jt,[t(e(D),{for:"ssh-port"},{default:o(()=>n[12]||(n[12]=[p("Port")])),_:1}),t(e(w),{id:"ssh-port",type:"number",placeholder:"22",modelValue:b.formData.sshPort,"onUpdate:modelValue":n[2]||(n[2]=i=>b.formData.sshPort=i)},null,8,["modelValue"])])]),a("div",Xt,[a("div",Wt,[t(e(D),{for:"ssh-user"},{default:o(()=>n[13]||(n[13]=[p("User")])),_:1}),t(e(w),{id:"ssh-user",placeholder:"e.g. root or ubuntu",modelValue:b.formData.sshUsername,"onUpdate:modelValue":n[3]||(n[3]=i=>b.formData.sshUsername=i)},null,8,["modelValue"])]),a("div",Zt,[t(e(D),{for:"ssh-password"},{default:o(()=>n[14]||(n[14]=[p("Password")])),_:1}),a("div",es,[t(e(w),{id:"ssh-password",type:e(x)?"text":"password",placeholder:"SSH password (optional if using key)",modelValue:b.formData.sshPassword,"onUpdate:modelValue":n[4]||(n[4]=i=>b.formData.sshPassword=i),class:"pr-8"},null,8,["type","modelValue"]),a("button",{type:"button",class:"absolute right-2 top-1/2 h-4 cursor-pointer -translate-y-1/2 text-muted-foreground hover:text-foreground transition-colors",onClick:n[5]||(n[5]=i=>x.value=!e(x)),"aria-label":e(x)?"Hide password":"Show password"},[t(e(I),{name:e(x)?"hugeicons:view":"hugeicons:view-off",class:"size-4!"},null,8,["name"])],8,ts)])])]),a("div",ss,[t(e(ue),{id:"ssh-keychain","model-value":b.formData.sshStoreInKeychain,"onUpdate:modelValue":n[6]||(n[6]=i=>b.formData.sshStoreInKeychain=i)},null,8,["model-value"]),t(e(D),{for:"ssh-keychain",class:"text-sm font-normal"},{default:o(()=>n[15]||(n[15]=[p("Store in keychain")])),_:1})]),a("div",as,[a("div",os,[t(e(ue),{id:"ssh-use-key","model-value":b.formData.sshUseKey,"onUpdate:modelValue":n[7]||(n[7]=i=>b.formData.sshUseKey=i)},null,8,["model-value"]),t(e(D),{for:"ssh-use-key",class:"text-sm font-semibold"},{default:o(()=>n[16]||(n[16]=[p("SSH Key Authentication")])),_:1})]),b.formData.sshUseKey?(c(),h("div",ls,[t(e(D),{for:"ssh-key-file"},{default:o(()=>n[17]||(n[17]=[p("Private Key")])),_:1}),t(e(F),{id:"ssh-key-file",modelValue:b.formData.sshPrivateKey,"onUpdate:modelValue":n[8]||(n[8]=i=>b.formData.sshPrivateKey=i),placeholder:"-----BEGIN OPENSSH PRIVATE KEY-----\\n...\\n-----END OPENSSH PRIVATE KEY-----",class:L(["min-h-[100px] max-h-[200px] text-xs font-mono",e(m)?"ring-2 ring-primary":""]),onDragover:e(d),onDragleave:e(l),onDrop:e(g)},null,8,["modelValue","class","onDragover","onDragleave","onDrop"]),n[18]||(n[18]=a("p",{class:"text-xs text-muted-foreground"}," Drop a .pem / .key file here, or paste the SSH private key content ",-1))])):B("",!0)])],64)):B("",!0)]),_:1})]),_:1}))}}),rs={class:"flex items-center gap-2"},ds={class:"flex items-center justify-between"},is={class:"space-y-2"},us={class:"space-y-4"},ps={class:"space-y-2"},cs={class:"space-y-2"},fs={class:"space-y-2"},ms=T({__name:"ConnectionSSLConfig",props:{formData:{}},setup(f){const r=f,{onDragOver:d,onDragLeave:l,onDrop:g,isDragging:m}=K(u=>{r.formData.sslCA=u}),{onDragOver:x,onDragLeave:b,onDrop:n,isDragging:i}=K(u=>{r.formData.sslCert=u}),{onDragOver:V,onDragLeave:_,onDrop:k,isDragging:C}=K(u=>{r.formData.sslKey=u});return(u,v)=>(c(),S(e(he),{value:"ssl"},{default:o(()=>[t(e(De),{class:"hover:no-underline"},{default:o(()=>[a("div",rs,[t(e(I),{name:"hugeicons:security-check",class:"size-4 text-primary"}),v[5]||(v[5]=a("span",null,"SSL Configuration",-1))])]),_:1}),t(e(xe),{class:"space-y-4 pt-4 px-1"},{default:o(()=>[a("div",ds,[t(e(D),{for:"ssl-enabled"},{default:o(()=>v[6]||(v[6]=[p("Enable SSL")])),_:1}),t(e(ve),{id:"ssl-enabled","model-value":u.formData.sslEnabled,"onUpdate:modelValue":v[0]||(v[0]=$=>u.formData.sslEnabled=$)},null,8,["model-value"])]),u.formData.sslEnabled?(c(),h(P,{key:0},[a("div",is,[t(e(D),{for:"ssl-mode"},{default:o(()=>v[7]||(v[7]=[p("SSL Mode")])),_:1}),t(e(Qe),{modelValue:u.formData.sslMode,"onUpdate:modelValue":v[1]||(v[1]=$=>u.formData.sslMode=$)},{default:o(()=>[t(e(Ge),{id:"ssl-mode"},{default:o(()=>[t(e(Ye),{placeholder:"Select mode"})]),_:1}),t(e(Je),null,{default:o(()=>[t(e(N),{value:"disable"},{default:o(()=>v[8]||(v[8]=[p("Disable")])),_:1}),t(e(N),{value:"preferred"},{default:o(()=>v[9]||(v[9]=[p("Preferred")])),_:1}),t(e(N),{value:"require"},{default:o(()=>v[10]||(v[10]=[p("Require")])),_:1}),t(e(N),{value:"verify-ca"},{default:o(()=>v[11]||(v[11]=[p("Verify CA")])),_:1}),t(e(N),{value:"verify-full"},{default:o(()=>v[12]||(v[12]=[p("Verify Full")])),_:1})]),_:1})]),_:1},8,["modelValue"])]),a("div",us,[a("div",ps,[t(e(D),{for:"ssl-ca"},{default:o(()=>v[13]||(v[13]=[p("CA Certificate")])),_:1}),t(e(F),{id:"ssl-ca",modelValue:u.formData.sslCA,"onUpdate:modelValue":v[2]||(v[2]=$=>u.formData.sslCA=$),placeholder:"-----BEGIN CERTIFICATE-----\\n...\\n-----END CERTIFICATE-----",class:L(["min-h-[80px] max-h-[160px] text-xs font-mono",e(m)?"ring-2 ring-primary":""]),onDragover:e(d),onDragleave:e(l),onDrop:e(g)},null,8,["modelValue","class","onDragover","onDragleave","onDrop"]),v[14]||(v[14]=a("p",{class:"text-xs text-muted-foreground"}," Drop a .pem / .crt file here, or paste the CA certificate content ",-1))]),a("div",cs,[t(e(D),{for:"ssl-cert"},{default:o(()=>v[15]||(v[15]=[p("Client Certificate")])),_:1}),t(e(F),{id:"ssl-cert",modelValue:u.formData.sslCert,"onUpdate:modelValue":v[3]||(v[3]=$=>u.formData.sslCert=$),placeholder:"-----BEGIN CERTIFICATE-----\\n...\\n-----END CERTIFICATE-----",class:L(["min-h-[80px] max-h-[160px] text-xs font-mono",e(i)?"ring-2 ring-primary":""]),onDragover:e(x),onDragleave:e(b),onDrop:e(n)},null,8,["modelValue","class","onDragover","onDragleave","onDrop"]),v[16]||(v[16]=a("p",{class:"text-xs text-muted-foreground"}," Drop a .pem / .crt file here, or paste the client certificate content ",-1))]),a("div",fs,[t(e(D),{for:"ssl-key"},{default:o(()=>v[17]||(v[17]=[p("SSL Key")])),_:1}),t(e(F),{id:"ssl-key",modelValue:u.formData.sslKey,"onUpdate:modelValue":v[4]||(v[4]=$=>u.formData.sslKey=$),placeholder:"-----BEGIN RSA PRIVATE KEY-----\\n...\\n-----END RSA PRIVATE KEY-----",class:L(["min-h-[80px] max-h-[160px] text-xs font-mono",e(C)?"ring-2 ring-primary":""]),onDragover:e(V),onDragleave:e(_),onDrop:e(k)},null,8,["modelValue","class","onDragover","onDragleave","onDrop"]),v[18]||(v[18]=a("p",{class:"text-xs text-muted-foreground"}," Drop a .pem / .key file here, or paste the private key content ",-1))])])],64)):B("",!0)]),_:1})]),_:1}))}}),vs={key:0,class:"flex items-center gap-2 rounded-md border p-3 text-sm"},gs={key:1,class:"flex items-center gap-2 rounded-md border border-green-200 bg-green-50 p-3 text-sm text-green-600 dark:border-green-900 dark:bg-green-950/50 dark:text-green-400"},ys={key:2,class:"flex items-center gap-2 rounded-md border border-red-200 bg-red-50 p-3 text-sm text-red-600 dark:border-red-900 dark:bg-red-950/50 dark:text-red-400"},bs=T({__name:"ConnectionStatusSection",props:{testStatus:{},errorMessage:{}},setup(f){const r=f;return(d,l)=>(c(),h(P,null,[d.testStatus==="testing"?(c(),h("div",vs,[t(e(I),{name:"hugeicons:loading-03",class:"animate-spin size-5!"}),l[0]||(l[0]=a("span",null,"Testing connection...",-1))])):B("",!0),d.testStatus==="success"?(c(),h("div",gs,[t(e(I),{name:"hugeicons:checkmark-circle-02",class:"shrink-0 size-4"}),l[1]||(l[1]=a("span",null,"Connection successful! Your database is ready to use.",-1))])):B("",!0),d.testStatus==="error"?(c(),h("div",ys,[t(e(I),{name:"hugeicons:cancel-01",class:"shrink-0 size-4"}),a("span",null,U(r.errorMessage||"Connection failed. Please check your details and try again."),1)])):B("",!0)],64))}}),_s={class:"flex flex-col items-center gap-1.5 text-center"},xs={key:0,class:"text-xxs leading-4 text-muted-foreground px-2"},hs={class:"flex items-center justify-center gap-1.5 min-h-3.5"},Ds=T({__name:"DatabaseTypeCard",props:{name:{},icon:{},description:{},selected:{type:Boolean},isSupport:{type:Boolean},isBeta:{type:Boolean},iconClass:{},unsupportedLabel:{}},setup(f){return(r,d)=>(c(),S(e(_t),{class:L(e(z)("relative",r.isSupport?"cursor-pointer":"opacity-90 cursor-not-allowed ",r.selected&&r.isSupport?"border-muted-foreground shadow-lg":"border-transparent bg-background"))},{default:o(()=>[t(e(xt),{class:"flex flex-col items-center justify-center p-0 w-full"},{default:o(()=>[a("div",{class:L(e(z)("flex items-center justify-center rounded-xl p-2 transition-transform duration-300",r.selected&&r.isSupport?"scale-105":"group-hover:scale-105",!r.isSupport&&"opacity-40"))},[(c(),S(Xe(r.icon),{class:L(e(z)("size-12",r.iconClass))},null,8,["class"]))],2),a("div",_s,[a("span",{class:L(e(z)("text-sm font-medium tracking-tight transition-colors",r.selected&&r.isSupport?"text-primary":"text-foreground/70",!r.isSupport&&"text-muted-foreground"))},U(r.name),3),r.description?(c(),h("p",xs,U(r.description),1)):B("",!0),a("div",hs,[r.isBeta?(c(),S(e(de),{key:0,variant:"outline",class:"text-[9px] px-1.5 py-0 h-3.5 uppercase tracking-widest font-bold border-amber-500/40 text-amber-600"},{default:o(()=>d[0]||(d[0]=[p(" Beta ")])),_:1})):B("",!0),r.isSupport?B("",!0):(c(),S(e(de),{key:1,variant:"secondary",class:"text-[9px] px-1.5 py-0 h-3.5 uppercase tracking-widest font-bold opacity-60"},{default:o(()=>[p(U(r.unsupportedLabel||"Soon"),1)]),_:1}))])])]),_:1})]),_:1},8,["class"]))}}),ks={class:"flex flex-col h-full overflow-hidden"},Cs={class:"flex-1 overflow-y-auto px-6 pb-4 pt-1"},Vs={id:"tour-database-type-cards",class:"grid grid-cols-2 gap-3 py-2 md:grid-cols-4"},Ss=T({__name:"ConnectionStepType",props:{databaseOptions:{},dbType:{}},emits:["next","close"],setup(f,{emit:r}){const d=f,l=r,g=n=>{n.isSupport&&n.onClick()},m=E(()=>d.databaseOptions.filter(n=>n.isSupport)),x=()=>{const n=m.value.findIndex(_=>_.type===d.dbType);let i=0;n!==-1&&(i=(n+1)%m.value.length);const V=m.value[i];V&&g(V)},b=()=>{const n=m.value.findIndex(_=>_.type===d.dbType);let i=m.value.length-1;n!==-1&&(i=(n-1+m.value.length)%m.value.length);const V=m.value[i];V&&g(V)};return We([{key:"arrowdown",excludeInput:!0,isPreventDefault:!0,callback:x},{key:"arrowright",excludeInput:!0,isPreventDefault:!0,callback:x},{key:"arrowup",excludeInput:!0,isPreventDefault:!0,callback:b},{key:"arrowleft",excludeInput:!0,isPreventDefault:!0,callback:b},{key:"enter",excludeInput:!0,isPreventDefault:!0,callback:()=>{d.dbType&&l("next")}}]),(n,i)=>{const V=I;return c(),h("div",ks,[t(e(ge),{class:"p-6 pb-3"},{default:o(()=>[t(e(ye),null,{default:o(()=>i[2]||(i[2]=[p("Select Database Type")])),_:1}),t(e(be),null,{default:o(()=>i[3]||(i[3]=[p("Choose the type of database you want to connect to")])),_:1})]),_:1}),a("div",Cs,[a("div",Vs,[(c(!0),h(P,null,j(n.databaseOptions,_=>(c(),S(Ds,{key:_.type,name:_.name,icon:_.icon,description:_.description,selected:_.isActive,onClick:()=>g(_),isSupport:_.isSupport,isBeta:_.isBeta,"unsupported-label":_.unsupportedLabel,iconClass:"size-10!"},null,8,["name","icon","description","selected","onClick","isSupport","isBeta","unsupported-label"]))),128))])]),t(e(_e),{class:"flex items-center justify-end gap-2 px-6 pb-6 pt-3"},{default:o(()=>[t(e(q),{variant:"outline",onClick:i[0]||(i[0]=_=>n.$emit("close")),size:"sm"},{default:o(()=>i[4]||(i[4]=[p(" Cancel ")])),_:1}),t(e(q),{id:"tour-database-type-next",onClick:i[1]||(i[1]=_=>n.$emit("next")),disabled:!n.dbType,size:"sm"},{default:o(()=>[i[5]||(i[5]=p(" Next ")),t(V,{name:"hugeicons:arrow-right-02"})]),_:1},8,["disabled"])]),_:1})])}}}),ws={class:"flex-1 overflow-y-auto p-4 space-y-4"},$s={key:0,id:"tour-connection-string-tab"},As={key:1,id:"tour-connection-form-tab"},Is={key:2},Es={key:3},Ts={class:"grid grid-cols-3 gap-3 mt-2"},Bs={class:"col-span-2 space-y-2"},Ps={class:"col-span-1 space-y-2"},Us={class:"space-y-2"},Ls={class:"text-xs text-muted-foreground"},Os={class:"space-y-4"},qs={class:"grid grid-cols-4 gap-2"},Ns={class:"col-span-3 space-y-2"},Rs={class:"space-y-2"},Ms={class:"grid grid-cols-2 gap-2"},Hs={class:"space-y-2"},zs={class:"space-y-2"},Fs={class:"relative"},Ks=["aria-label"],js={class:"space-y-2"},Qs={key:0,class:"space-y-4"},Gs={class:"space-y-2"},Ys={class:"flex gap-2"},Js={class:"text-xs text-muted-foreground"},Xs={class:"space-y-3"},Ws={class:"grid grid-cols-2 gap-2"},Zs={class:"text-left"},ea={class:"font-medium"},ta={class:"text-left"},sa={class:"font-medium"},aa={key:0,class:"grid grid-cols-2 gap-3"},oa={class:"space-y-2"},la={class:"space-y-2"},na={class:"col-span-2 space-y-2"},ra={class:"col-span-2 space-y-2"},da={key:1,class:"grid grid-cols-2 gap-3"},ia={class:"col-span-2 space-y-2"},ua={class:"col-span-2 space-y-2"},pa={class:"col-span-2 space-y-2"},ca={class:"flex flex-1 space-x-2"},fa={class:"flex space-x-2"},Da=T({__name:"CreateConnectionModal",props:{open:{type:Boolean},editingConnection:{},workspaceId:{}},emits:["update:open","addNew","update"],setup(f,{emit:r}){const d=f,l=r,g=()=>{l("update:open",!1),setTimeout(Be,300)},m=G(!1),x=Ze(),b=E(()=>pt(x.public.sqlite3ConnectionsEnabled)),{step:n,dbType:i,connectionName:V,connectionMethod:_,connectionString:k,formData:C,managedSqlite:u,tagIds:v,testStatus:$,testErrorMessage:ke,handleNext:Ce,handleBack:Ve,handleTestConnection:Se,handleCreateConnection:we,getDefaultPort:$e,getConnectionPlaceholder:ae,availableConnectionMethods:oe,structuredTargetLabel:Ae,structuredTargetPlaceholder:Ie,canUseNetworkOptions:Ee,canPickSqliteFile:X,isFormValid:W,pickSqliteFile:Te,resetForm:Be}=ct({open:()=>d.open,editingConnection:()=>d.editingConnection,workspaceId:()=>d.workspaceId,onAddNew:A=>l("addNew",A),onUpdate:A=>l("update",A),onClose:g}),Pe=E(()=>ft.map(A=>{const s=mt(A,b.value);return{...A,isSupport:s?!1:A.isSupport,unsupportedLabel:s?"Disabled":A.unsupportedLabel,isActive:i.value===A.type,onClick:()=>i.value=A.type}})),le=E({get:()=>i.value===ie.ORACLE?C.serviceName:C.database,set:A=>{if(i.value===ie.ORACLE){C.serviceName=A;return}C.database=A}}),Ue=()=>{W.value&&$.value!=="testing"&&we()};return(A,s)=>(c(),S(e(et),{open:A.open,"onUpdate:open":s[20]||(s[20]=y=>A.$emit("update:open",y))},{default:o(()=>[t(e(nt),{class:"max-w-[60vw]! w-full h-[60vh]! max-h-[90vh] p-0 flex flex-col overflow-hidden"},{default:o(()=>[e(n)===1?(c(),S(Ss,{key:0,"database-options":Pe.value,"db-type":e(i),onNext:e(Ce),onClose:g},null,8,["database-options","db-type","onNext"])):(c(),h("form",{key:1,onSubmit:lt(Ue,["prevent"]),class:"flex flex-col h-full overflow-hidden"},[t(e(ge),{class:"p-6 pb-2"},{default:o(()=>[t(e(ye),null,{default:o(()=>s[21]||(s[21]=[p("Connection Details")])),_:1}),t(e(be),null,{default:o(()=>[p(" Enter the details for your "+U(e(i))+" database ",1)]),_:1})]),_:1}),a("div",ws,[t(e(tt),{modelValue:e(_),"onUpdate:modelValue":s[19]||(s[19]=y=>M(_)?_.value=y:null),class:"w-full"},{default:o(()=>[t(e(st),{class:"grid w-fit",style:at({gridTemplateColumns:`repeat(${e(oe).length}, minmax(0, 1fr))`}),id:"tour-connection-method-tabs"},{default:o(()=>[(c(!0),h(P,null,j(e(oe),y=>(c(),S(e(ot),{key:y,value:y,class:"cursor-pointer"},{default:o(()=>[y===e(Z).STRING?(c(),h("span",$s," Connection String ")):y===e(Z).FORM?(c(),h("span",As," Connection Form ")):y===e(Z).MANAGED?(c(),h("span",Is," Managed SQLite ")):(c(),h("span",Es,"Database File"))]),_:2},1032,["value"]))),128))]),_:1},8,["style"]),a("div",Ts,[a("div",Bs,[t(e(D),{for:"connection-name",class:"flex items-center gap-2"},{default:o(()=>[t(e(I),{name:"hugeicons:database",class:"h-3.5 w-3.5 text-muted-foreground"}),s[22]||(s[22]=p(" Connection Name ")),s[23]||(s[23]=a("span",{class:"text-destructive"},"*",-1))]),_:1}),t(e(w),{id:"connection-name",placeholder:"My Database Connection",modelValue:e(V),"onUpdate:modelValue":s[0]||(s[0]=y=>M(V)?V.value=y:null)},null,8,["modelValue"])]),a("div",Ps,[t(e(D),{class:"flex items-center gap-2"},{default:o(()=>[t(e(I),{name:"hugeicons:tag-01",class:"h-3.5 w-3.5 text-muted-foreground"}),s[24]||(s[24]=p(" Environment Tags "))]),_:1}),t(e(Kt),{modelValue:e(v),"onUpdate:modelValue":s[1]||(s[1]=y=>M(v)?v.value=y:null)},null,8,["modelValue"])])]),t(e(H),{value:"string",class:"space-y-4 pt-4"},{default:o(()=>[a("div",Us,[t(e(D),{for:"connection-string",class:"flex items-center gap-2"},{default:o(()=>[t(e(I),{name:"hugeicons:connect",class:"h-3.5 w-3.5 text-muted-foreground"}),s[25]||(s[25]=p(" Connection String ")),s[26]||(s[26]=a("span",{class:"text-destructive"},"*",-1))]),_:1}),t(e(w),{id:"connection-string",placeholder:e(ae)(),modelValue:e(k),"onUpdate:modelValue":s[2]||(s[2]=y=>M(k)?k.value=y:null),class:"font-mono text-sm"},null,8,["placeholder","modelValue"]),a("p",Ls," Example: "+U(e(ae)()),1)])]),_:1}),t(e(H),{value:"form",class:"space-y-6 pt-2"},{default:o(()=>[a("div",Os,[a("div",qs,[a("div",Ns,[t(e(D),{for:"host"},{default:o(()=>s[27]||(s[27]=[p("Host "),a("span",{class:"text-destructive"},"*",-1)])),_:1}),t(e(w),{id:"host",placeholder:"localhost",modelValue:e(C).host,"onUpdate:modelValue":s[3]||(s[3]=y=>e(C).host=y)},null,8,["modelValue"])]),a("div",Rs,[t(e(D),{for:"port"},{default:o(()=>s[28]||(s[28]=[p("Port "),a("span",{class:"text-destructive"},"*",-1)])),_:1}),t(e(w),{id:"port",placeholder:e($e)(),modelValue:e(C).port,"onUpdate:modelValue":s[4]||(s[4]=y=>e(C).port=y)},null,8,["placeholder","modelValue"])])]),a("div",Ms,[a("div",Hs,[t(e(D),{for:"username"},{default:o(()=>s[29]||(s[29]=[p("User "),a("span",{class:"text-destructive"},"*",-1)])),_:1}),t(e(w),{id:"username",placeholder:"username",modelValue:e(C).username,"onUpdate:modelValue":s[5]||(s[5]=y=>e(C).username=y)},null,8,["modelValue"])]),a("div",zs,[t(e(D),{for:"password"},{default:o(()=>s[30]||(s[30]=[p("Password")])),_:1}),a("div",Fs,[t(e(w),{id:"password",type:e(m)?"text":"password",placeholder:"••••••••",modelValue:e(C).password,"onUpdate:modelValue":s[6]||(s[6]=y=>e(C).password=y),class:"pr-8"},null,8,["type","modelValue"]),a("button",{type:"button",class:"absolute right-2 top-1/2 h-5 cursor-pointer -translate-y-1/2 text-muted-foreground hover:text-foreground transition-colors",onClick:s[7]||(s[7]=y=>m.value=!e(m)),"aria-label":e(m)?"Hide password":"Show password"},[t(e(I),{name:e(m)?"hugeicons:view":"hugeicons:view-off",class:"size-4!"},null,8,["name"])],8,Ks)])])]),a("div",js,[t(e(D),{for:"structured-target"},{default:o(()=>[p(U(e(Ae))+" ",1),s[31]||(s[31]=a("span",{class:"text-destructive"},"*",-1))]),_:1}),t(e(w),{id:"structured-target",placeholder:e(Ie),modelValue:le.value,"onUpdate:modelValue":s[8]||(s[8]=y=>le.value=y)},null,8,["placeholder","modelValue"])])]),e(Ee)?(c(),h("div",Qs,[t(e(ce),{type:"single",collapsible:"",class:"w-full border px-4 rounded-lg shadow"},{default:o(()=>[t(ms,{"form-data":e(C)},null,8,["form-data"])]),_:1}),t(e(ce),{type:"single",collapsible:"",class:"w-full border px-4 rounded-lg shadow"},{default:o(()=>[t(ns,{"form-data":e(C)},null,8,["form-data"])]),_:1})])):B("",!0)]),_:1}),t(e(H),{value:"file",class:"space-y-4 pt-4"},{default:o(()=>[a("div",Gs,[t(e(D),{for:"file-path",class:"flex items-center gap-2"},{default:o(()=>[t(e(I),{name:"hugeicons:file-01",class:"h-3.5 w-3.5 text-muted-foreground"}),s[32]||(s[32]=p(" SQLite File ")),s[33]||(s[33]=a("span",{class:"text-destructive"},"*",-1))]),_:1}),a("div",Ys,[t(e(w),{id:"file-path",placeholder:"/Users/you/data/app.sqlite",modelValue:e(C).filePath,"onUpdate:modelValue":s[9]||(s[9]=y=>e(C).filePath=y),readonly:e(X)},null,8,["modelValue","readonly"]),e(X)?(c(),S(e(q),{key:0,type:"button",variant:"outline",onClick:e(Te)},{default:o(()=>s[34]||(s[34]=[p(" Browse ")])),_:1},8,["onClick"])):B("",!0)]),a("p",Js,[e(X)?(c(),h(P,{key:0},[p(" Choose a local SQLite database file from the desktop app. ")],64)):b.value?(c(),h(P,{key:1},[p(" Enter a SQLite file path that this app runtime can read. In hosted web deployments, this path is on the server. ")],64)):(c(),h(P,{key:2},[p(" SQLite file connections are disabled in this deployment. ")],64))])])]),_:1}),t(e(H),{value:"managed",class:"space-y-6 pt-2"},{default:o(()=>[a("div",Xs,[t(e(D),null,{default:o(()=>s[35]||(s[35]=[p("SQLite Provider")])),_:1}),a("div",Ws,[t(e(q),{type:"button",variant:e(u).provider===e(R).CLOUDFLARE_D1?"default":"outline",class:"justify-start h-auto py-3",onClick:s[10]||(s[10]=y=>e(u).provider=e(R).CLOUDFLARE_D1)},{default:o(()=>[a("div",Zs,[a("div",ea,[t(e(I),{name:"devicon:cloudflare",class:"h-4 w-4 inline-block"}),s[36]||(s[36]=p(" Cloudflare D1 "))]),s[37]||(s[37]=a("div",{class:"text-xs opacity-80"}," Remote SQLite over the Cloudflare API ",-1))])]),_:1},8,["variant"]),t(e(q),{type:"button",variant:e(u).provider===e(R).TURSO?"default":"outline",class:"justify-start h-auto py-3",onClick:s[11]||(s[11]=y=>e(u).provider=e(R).TURSO)},{default:o(()=>[a("div",ta,[a("div",sa,[t(e(I),{name:"simple-icons:turso",class:"text-[#4ff8d2]"}),s[38]||(s[38]=p(" Turso "))]),s[39]||(s[39]=a("div",{class:"text-xs opacity-80"}," libSQL endpoint with optional branch routing ",-1))])]),_:1},8,["variant"])])]),e(u).provider===e(R).CLOUDFLARE_D1?(c(),h("div",aa,[a("div",oa,[t(e(D),{for:"d1-account-id"},{default:o(()=>s[40]||(s[40]=[p("Account ID "),a("span",{class:"text-destructive"},"*",-1)])),_:1}),t(e(w),{id:"d1-account-id",modelValue:e(u).accountId,"onUpdate:modelValue":s[12]||(s[12]=y=>e(u).accountId=y),placeholder:"Cloudflare account ID"},null,8,["modelValue"])]),a("div",la,[t(e(D),{for:"d1-database-id"},{default:o(()=>s[41]||(s[41]=[p("Database ID "),a("span",{class:"text-destructive"},"*",-1)])),_:1}),t(e(w),{id:"d1-database-id",modelValue:e(u).databaseId,"onUpdate:modelValue":s[13]||(s[13]=y=>e(u).databaseId=y),placeholder:"D1 database ID"},null,8,["modelValue"])]),a("div",na,[t(e(D),{for:"d1-database-name"},{default:o(()=>s[42]||(s[42]=[p("Database Name")])),_:1}),t(e(w),{id:"d1-database-name",modelValue:e(u).databaseName,"onUpdate:modelValue":s[14]||(s[14]=y=>e(u).databaseName=y),placeholder:"Optional display name"},null,8,["modelValue"])]),a("div",ra,[t(e(D),{for:"d1-api-token"},{default:o(()=>s[43]||(s[43]=[p("API Token "),a("span",{class:"text-destructive"},"*",-1)])),_:1}),t(e(w),{id:"d1-api-token",type:"password",modelValue:e(u).apiToken,"onUpdate:modelValue":s[15]||(s[15]=y=>e(u).apiToken=y),placeholder:"Cloudflare API token"},null,8,["modelValue"])])])):(c(),h("div",da,[a("div",ia,[t(e(D),{for:"turso-url"},{default:o(()=>s[44]||(s[44]=[p("Database URL "),a("span",{class:"text-destructive"},"*",-1)])),_:1}),t(e(w),{id:"turso-url",modelValue:e(u).url,"onUpdate:modelValue":s[16]||(s[16]=y=>e(u).url=y),placeholder:"libsql://your-db.turso.io",class:"font-mono text-sm"},null,8,["modelValue"])]),a("div",ua,[t(e(D),{for:"turso-auth-token"},{default:o(()=>s[45]||(s[45]=[p("Auth Token "),a("span",{class:"text-destructive"},"*",-1)])),_:1}),t(e(w),{id:"turso-auth-token",type:"password",modelValue:e(u).authToken,"onUpdate:modelValue":s[17]||(s[17]=y=>e(u).authToken=y),placeholder:"Turso auth token"},null,8,["modelValue"])]),a("div",pa,[t(e(D),{for:"turso-branch-name"},{default:o(()=>s[46]||(s[46]=[p("Branch")])),_:1}),t(e(w),{id:"turso-branch-name",modelValue:e(u).branchName,"onUpdate:modelValue":s[18]||(s[18]=y=>e(u).branchName=y),placeholder:"main"},null,8,["modelValue"])])])),s[47]||(s[47]=a("p",{class:"text-xs text-muted-foreground"}," Managed SQLite providers stay on the SQL-family workspace after validation, but use provider-specific transport under the hood. ",-1))]),_:1})]),_:1},8,["modelValue"]),t(bs,{"test-status":e($),"error-message":e(ke)},null,8,["test-status","error-message"])]),t(e(_e),{class:"p-6 pt-4 flex flex-col-reverse gap-2 sm:flex-row sm:justify-between sm:space-x-2"},{default:o(()=>[a("div",ca,[t(e(q),{type:"button",variant:"outline",onClick:e(Ve),size:"sm"},{default:o(()=>[t(e(I),{name:"hugeicons:arrow-left-02"}),s[48]||(s[48]=p(" Back "))]),_:1},8,["onClick"])]),a("div",fa,[t(e(q),{type:"button",variant:"outline",onClick:e(Se),size:"sm",disabled:e($)==="testing"||!e(W)},{default:o(()=>[e($)==="testing"?(c(),S(e(I),{key:0,name:"hugeicons:loading-03",class:"mr-2 size-4 animate-spin"})):B("",!0),s[49]||(s[49]=p(" Test "))]),_:1},8,["onClick","disabled"]),t(e(q),{id:"tour-create-update-connection-btn",type:"submit",size:"sm",disabled:e($)==="testing"||!e(W)},{default:o(()=>[p(U(A.editingConnection?"Update":"Create"),1)]),_:1},8,["disabled"])])]),_:1})],32))]),_:1})]),_:1},8,["open"]))}});export{Da as _};