orcaq 1.0.28 → 1.0.30
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.
- package/.output/nitro.json +1 -1
- package/.output/public/_nuxt/{S6q6IfIg.js → 6I72R6kW.js} +1 -1
- package/.output/public/_nuxt/{W0T58tNs.js → 8_EuFD3X.js} +1 -1
- package/.output/public/_nuxt/B6H7odCi.js +1 -0
- package/.output/public/_nuxt/B7nSJBpY.js +1 -0
- package/.output/public/_nuxt/{B-o1cyu1.js → BBNxNerU.js} +1 -1
- package/.output/public/_nuxt/BDKd-SA5.js +1 -0
- package/.output/public/_nuxt/{DAsY4LnG.js → BDRdbLz0.js} +1 -1
- package/.output/public/_nuxt/{T2yrk5P8.js → BKWWO5HE.js} +1 -1
- package/.output/public/_nuxt/{DhSSuHOz.js → BV6TSzbC.js} +4 -1
- package/.output/public/_nuxt/{BranJUWp.js → BVKG-F8j.js} +1 -1
- package/.output/public/_nuxt/{BHFnD9yO.js → BoGW82nK.js} +1 -1
- package/.output/public/_nuxt/Bs_ItSbk.js +1 -0
- package/.output/public/_nuxt/{BZEKLHO-.js → Btu7FO8S.js} +1 -1
- package/.output/public/_nuxt/C04Tz2vC.js +67 -0
- package/.output/public/_nuxt/{DNmOzKte.js → C4JPKbJK.js} +1 -1
- package/.output/public/_nuxt/{B7iORLht.js → C5KSeJUi.js} +5 -5
- package/.output/public/_nuxt/CDnZBTSk.js +1 -0
- package/.output/public/_nuxt/CKq06U7u.js +19 -0
- package/.output/public/_nuxt/{vU5dtBjy.js → CQpD-JHn.js} +1 -1
- package/.output/public/_nuxt/{DdMwxl0I.js → C_CjS9Yt.js} +1 -1
- package/.output/public/_nuxt/{BRpeq4XL.js → Chcc8yNZ.js} +1 -1
- package/.output/public/_nuxt/{Dwm3kp4S.js → ClnidwGv.js} +86 -86
- package/.output/public/_nuxt/{BV4_2PzU.js → CpzDNDcD.js} +1 -1
- package/.output/public/_nuxt/Cs1HkKH7.js +1 -0
- package/.output/public/_nuxt/{DgPgl0Vt.js → CsYOf3m-.js} +1 -1
- package/.output/public/_nuxt/{Ds4ET3BG.js → CtRc_P0d.js} +27 -27
- package/.output/public/_nuxt/Ctr2mpV9.js +2 -0
- package/.output/public/_nuxt/{SzZsnvJ-.js → CzF1NEwP.js} +1 -1
- package/.output/public/_nuxt/{D4jtSPyP.js → D2j2esR5.js} +2 -2
- package/.output/public/_nuxt/D4ZGn1tW.js +1 -0
- package/.output/public/_nuxt/{B3XOCDJg.js → D6YseYA6.js} +1 -1
- package/.output/public/_nuxt/{CbjqLbgu.js → D7EPcL9i.js} +1 -1
- package/.output/public/_nuxt/{DfL_wWxk.js → DCMJS6Fh.js} +1 -1
- package/.output/public/_nuxt/{rdXrKZa8.js → DFd73eNR.js} +1 -1
- package/.output/public/_nuxt/{BUuSKT2f.js → DQiMjOqm.js} +15 -15
- package/.output/public/_nuxt/{BQAF7cM_.js → DVe5MHjS.js} +1 -1
- package/.output/public/_nuxt/{BsnN2mQb.js → D_G1mAJ8.js} +2 -2
- package/.output/public/_nuxt/{DM73sEXg.js → De1hkrJC.js} +1 -1
- package/.output/public/_nuxt/DlfHMoPT.js +1 -0
- package/.output/public/_nuxt/{BIW9Rd2L.js → DnCs9xpG.js} +1 -1
- package/.output/public/_nuxt/DvJ2MjiW.js +2 -0
- package/.output/public/_nuxt/DynamicTable.B3c2woGb.css +1 -0
- package/.output/public/_nuxt/{CAcIcjka.js → DzJD_fir.js} +3 -3
- package/.output/public/_nuxt/{UrLgZoyE.js → Dzr_z_mY.js} +1 -1
- package/.output/public/_nuxt/{DftZZFKd.js → FyrDS92w.js} +104 -104
- package/.output/public/_nuxt/{BlWNlw-C.js → HQyqkOpZ.js} +1 -1
- package/.output/public/_nuxt/{BwddCgOY.js → KlH93fIm.js} +1 -1
- package/.output/public/_nuxt/{iDT-eQ46.js → MLO1tLKS.js} +1 -1
- package/.output/public/_nuxt/{D8s-WG7x.js → OEVyCyyD.js} +1 -1
- package/.output/public/_nuxt/{_fileId_.B3PtfMYN.css → _fileId_.DDOcnoDQ.css} +1 -1
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/0ab6db39-d52b-46b9-a687-0df3b4c65db5.json +1 -0
- package/.output/public/_nuxt/builds/meta/dev.json +1 -0
- package/.output/public/_nuxt/{CQNFvXDN.js → e_Ir8LP9.js} +1 -1
- package/.output/public/_nuxt/entry.XV7TCKso.css +1 -0
- package/.output/public/_nuxt/{DpyvTVPg.js → fRxmPZZB.js} +1 -1
- package/.output/public/_nuxt/{B0pvfm-W.js → h2fvG4Xe.js} +1 -1
- package/.output/public/_nuxt/llxtZpFD.js +160 -0
- package/.output/public/_nuxt/{CQr87mff.js → q4KcRwD-.js} +1 -1
- package/.output/public/_nuxt/{Cqe10li5.js → qIKg23Pc.js} +1 -1
- package/.output/public/_nuxt/{aKVabwds.js → txD20ixW.js} +1 -1
- package/.output/public/_nuxt/{CwtNS48a.js → ubO-cWd-.js} +1 -1
- package/.output/public/_nuxt/x2HBvptj.js +1 -0
- package/.output/public/_nuxt/{lN7hePE6.js → y68LmDX2.js} +1 -1
- package/.output/server/chunks/build/client.manifest.mjs +394 -382
- package/.output/server/chunks/build/client.manifest.mjs.map +1 -1
- package/.output/server/chunks/nitro/nitro.mjs +389 -372
- package/.output/server/chunks/routes/api/ai/agent.mjs +1 -0
- package/.output/server/chunks/routes/api/ai/agent.mjs.map +1 -1
- package/.output/server/chunks/routes/api/ai/chat.mjs +1 -0
- package/.output/server/chunks/routes/api/ai/chat.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-export/export-database.mjs +1 -0
- package/.output/server/chunks/routes/api/database-export/export-database.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-import/import-database.mjs +1 -0
- package/.output/server/chunks/routes/api/database-import/import-database.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/create-role.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/create-role.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/delete-role.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/delete-role.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/get-databases-with-permissions.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/get-databases-with-permissions.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/get-databases.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/get-databases.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/get-permissions.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/get-permissions.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/get-role-inheritance.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/get-role-inheritance.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/get-role.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/get-role.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/get-roles.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/get-roles.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/get-schema-objects.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/get-schema-objects.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/get-schemas.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/get-schemas.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/grant-bulk-permissions.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/grant-bulk-permissions.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/grant-permission.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/grant-permission.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-roles/revoke-permission.mjs +1 -0
- package/.output/server/chunks/routes/api/database-roles/revoke-permission.mjs.map +1 -1
- package/.output/server/chunks/routes/api/functions/definition.post.mjs +1 -0
- package/.output/server/chunks/routes/api/functions/definition.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/functions/delete.post.mjs +1 -0
- package/.output/server/chunks/routes/api/functions/delete.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/functions/overview.post.mjs +1 -0
- package/.output/server/chunks/routes/api/functions/overview.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/functions/rename.post.mjs +1 -0
- package/.output/server/chunks/routes/api/functions/rename.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/functions/signature.post.mjs +1 -0
- package/.output/server/chunks/routes/api/functions/signature.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/functions/update.post.mjs +1 -0
- package/.output/server/chunks/routes/api/functions/update.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/instance-insights/cancel-query.post.mjs +1 -0
- package/.output/server/chunks/routes/api/instance-insights/cancel-query.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/instance-insights/configuration.post.mjs +1 -0
- package/.output/server/chunks/routes/api/instance-insights/configuration.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/instance-insights/dashboard.post.mjs +1 -0
- package/.output/server/chunks/routes/api/instance-insights/dashboard.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/instance-insights/drop-slot.post.mjs +1 -0
- package/.output/server/chunks/routes/api/instance-insights/drop-slot.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/instance-insights/replication.post.mjs +1 -0
- package/.output/server/chunks/routes/api/instance-insights/replication.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/instance-insights/state.post.mjs +1 -0
- package/.output/server/chunks/routes/api/instance-insights/state.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/instance-insights/terminate-connection.post.mjs +1 -0
- package/.output/server/chunks/routes/api/instance-insights/terminate-connection.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/instance-insights/toggle-slot-status.post.mjs +1 -0
- package/.output/server/chunks/routes/api/instance-insights/toggle-slot-status.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/managment-connection/health-check.mjs +1 -0
- package/.output/server/chunks/routes/api/managment-connection/health-check.mjs.map +1 -1
- package/.output/server/chunks/routes/api/metadata/erd.post.mjs +1 -0
- package/.output/server/chunks/routes/api/metadata/erd.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/metadata/meta-data.post.mjs +1 -0
- package/.output/server/chunks/routes/api/metadata/meta-data.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/metadata/reverse-schemas.post.mjs +1 -0
- package/.output/server/chunks/routes/api/metadata/reverse-schemas.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/metrics/monitor.post.mjs +1 -0
- package/.output/server/chunks/routes/api/metrics/monitor.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/query/execute.post.mjs +1 -0
- package/.output/server/chunks/routes/api/query/execute.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/query/raw-execute-stream.post.mjs +1 -0
- package/.output/server/chunks/routes/api/query/raw-execute-stream.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/query/raw-execute.post.mjs +1 -0
- package/.output/server/chunks/routes/api/query/raw-execute.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/bulk-delete.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/bulk-delete.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/bulk-update.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/bulk-update.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/ddl.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/ddl.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/export.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/export.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/indexes.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/indexes.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/meta.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/meta.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/overview.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/overview.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/rls.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/rls.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/rules.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/rules.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/size.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/size.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/structure.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/structure.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tables/triggers.post.mjs +1 -0
- package/.output/server/chunks/routes/api/tables/triggers.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/views/definition.post.mjs +1 -0
- package/.output/server/chunks/routes/api/views/definition.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/views/dependencies.post.mjs +1 -0
- package/.output/server/chunks/routes/api/views/dependencies.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/views/explain.post.mjs +1 -0
- package/.output/server/chunks/routes/api/views/explain.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/views/indexes.post.mjs +1 -0
- package/.output/server/chunks/routes/api/views/indexes.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/views/meta.post.mjs +1 -0
- package/.output/server/chunks/routes/api/views/meta.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/views/overview.post.mjs +1 -0
- package/.output/server/chunks/routes/api/views/overview.post.mjs.map +1 -1
- package/.output/server/chunks/routes/renderer.mjs +1 -0
- package/.output/server/index.mjs +1 -0
- package/.output/server/index.mjs.map +1 -1
- package/.output/server/package.json +1 -1
- package/bin/cli.mjs +55 -9
- package/package.json +1 -1
- package/.output/public/_nuxt/ACi_yrrw.js +0 -1
- package/.output/public/_nuxt/B-E3EDXq.js +0 -21
- package/.output/public/_nuxt/B-rj9QI0.js +0 -1
- package/.output/public/_nuxt/BDPGejuO.js +0 -2
- package/.output/public/_nuxt/BHp-OX9z.js +0 -1
- package/.output/public/_nuxt/BJdgR-zN.js +0 -1
- package/.output/public/_nuxt/BSs5g8DH.js +0 -1
- package/.output/public/_nuxt/CO-m0olR.js +0 -2
- package/.output/public/_nuxt/CQQKPHb8.js +0 -225
- package/.output/public/_nuxt/CfblXyCF.js +0 -1
- package/.output/public/_nuxt/D9SCXF1G.js +0 -1
- package/.output/public/_nuxt/DynamicTable.BW0D7NXb.css +0 -1
- package/.output/public/_nuxt/GqcI3eLm.js +0 -67
- package/.output/public/_nuxt/builds/meta/1e32d709-950d-49a3-8d61-1b3385318747.json +0 -1
- package/.output/public/_nuxt/entry.Kia9TCip.css +0 -1
- package/.output/public/_nuxt/mW-nBTJP.js +0 -1
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import{u as Ra,_ as $a,a as Oa,b as Na}from"./CQpD-JHn.js";import{bm as ka,r as q,bn as Zt,aJ as ct,bo as La,E as B,d as se,bp as Pa,bj as He,g as U,h as _,a as re,F as Te,s as $e,c as te,y as De,e as g,l as i,m as Re,b as l,q as me,z as Ie,x as ne,B as Ae,bq as en,o as D,t as Xe,as as tn,aC as Se,Y as _e,aG as Ve,n as he,br as Fa,bc as xt,f as _t,aI as ze,a2 as ke,bs as je,bt as Ma,bh as Ua,ba as Va,aD as za,bu as ja,bv as Ba,p as F,aH as aa,bw as Bt,k as Le,al as pe,X as nn,W as Ee,at as an,j as on,v as qt,Z as rn,$ as oa,a0 as qa,a1 as ln,aM as Ht,aN as ra,R as sn,a3 as ut,a4 as Ze,ac as X,bx as Dn,_ as Ke,a6 as cn,b8 as Ha,by as dt,N as Gt,bz as In,bA as Fe,aR as la,bf as Ce,M as be,bB as sa,bC as Ga,aa as Wa,a5 as un,aS as gt,D as Ka,O as Qa,Q as Ya,V as Xa,K as Ja,bd as Za,T as eo,C as to,bD as no,w as dn,bE as ao,ax as oo,ay as ro,az as An,bF as lo,bG as so,aL as io,bH as co,bI as ia,bJ as uo,bK as fo,bL as po,bM as Wt,bN as mo,bO as vo,b9 as go,bk as yt}from"./FyrDS92w.js";import{_ as yo}from"./BoGW82nK.js";import{j as Dt,C as G,_ as ho,b as bo,c as wo,e as Nt}from"./OEVyCyyD.js";import{u as Rn}from"./kehy-5uo.js";import{_ as So}from"./BDKd-SA5.js";import{a as fn,b as pn,c as mn,d as vn,e as gn,f as yn,g as ca,_ as hn}from"./DCMJS6Fh.js";import{u as ua,_ as da}from"./DzJD_fir.js";import{g as kt}from"./BBNxNerU.js";import{f as $n}from"./BKltSiU0.js";import{_ as xo}from"./DnCs9xpG.js";import{_ as To,a as Co,b as Eo}from"./D6YseYA6.js";import{_ as _o}from"./BDRdbLz0.js";import{a as Do,b as Io,c as Ao,d as Ro,e as $o}from"./BVKG-F8j.js";import{i as Oo,a as No}from"./D8pqASdN.js";import{_ as Lt}from"./qIKg23Pc.js";import"./txD20ixW.js";import"./e_Ir8LP9.js";import"./Btu7FO8S.js";import"./C4JPKbJK.js";import"./Bdtn2mn5.js";import"./DQiMjOqm.js";var we=(e=>(e.Explorer="Explorer",e.Schemas="Schemas",e.ErdDiagram="ERDiagram",e.UsersRoles="UsersRoles",e.DatabaseExport="DatabaseExport",e.Agent="Agent",e))(we||{});const fa=ka("activity-bar",()=>{const e=q("Schemas"),t=u=>{e.value=u},a=q(["Tables"]),n=q(0),s=q([]),o=q(0),r=q([]),m=q(0);return{activityActive:e,setActivityActive:t,schemasExpandedState:a,schemaCurrentScrollTop:n,explorerExpandedState:s,explorerCurrentScrollTop:o,onCollapsedSchemaTree:()=>{a.value=[]},onCollapsedErdTree:()=>{r.value=[]},erdExpandedState:r,erdCurrentScrollTop:m}},{persist:!0});/**
|
|
2
|
+
* @license lucide-vue-next v0.487.0 - ISC
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the ISC license.
|
|
5
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/const ko=Zt("file",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}]]);/**
|
|
7
|
+
* @license lucide-vue-next v0.487.0 - ISC
|
|
8
|
+
*
|
|
9
|
+
* This source code is licensed under the ISC license.
|
|
10
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
11
|
+
*/const Lo=Zt("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);/**
|
|
12
|
+
* @license lucide-vue-next v0.487.0 - ISC
|
|
13
|
+
*
|
|
14
|
+
* This source code is licensed under the ISC license.
|
|
15
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
16
|
+
*/const Po=Zt("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);var Oe=(e=>(e.Superuser="superuser",e.User="user",e.Role="role",e))(Oe||{});const pa=()=>{const e=fa(),t=ct(),{trackEvent:a}=La();return{activity:B(()=>[{id:we.Explorer,title:"Files / Folders",icon:"hugeicons:folder-file-storage",isActive:e.activityActive===we.Explorer},{id:we.Schemas,title:"Schemas",icon:"hugeicons:database",isActive:e.activityActive===we.Schemas},{id:we.ErdDiagram,title:"ErdDiagram",icon:"hugeicons:hierarchy-square-02",isActive:e.activityActive===we.ErdDiagram},{id:we.UsersRoles,title:"Users & Roles",icon:"hugeicons:user-shield-01",isActive:e.activityActive===we.UsersRoles},{id:we.Agent,title:"AI Agent",icon:"hugeicons:robotic",isActive:e.activityActive===we.Agent}]),onChangeActivity:(o,r)=>{e.setActivityActive(o),r&&t.onToggleActivityBarPanel(),a("activity_bar",{activity:o})}}},Fo={class:"max-w-9 min-w-9 py-2"},Mo={class:"flex flex-col justify-between h-full space-y-2"},Uo={class:"flex flex-col items-center gap-1"},Vo=se({__name:"ActivityBar",setup(e){const{activity:t,onChangeActivity:a}=pa();return Pa(),(n,s)=>{const o=me,r=Re,m=Ie,c=Ae,f=De,u=en("auto-animate");return He((D(),U("div",Fo,[_("div",Mo,[_("div",Uo,[(D(!0),U(Te,null,$e(l(t),p=>(D(),te(f,null,{default:g(()=>[i(m,{"as-child":""},{default:g(()=>[i(r,{size:"iconMd",variant:p.isActive?"default":"ghost",onClick:h=>l(a)(p.id,!0)},{default:g(()=>[i(o,{name:p.icon,class:"size-5!"},null,8,["name"])]),_:2},1032,["variant","onClick"])]),_:2},1024),i(c,{side:"right"},{default:g(()=>[_("p",null,ne(p.title),1)]),_:2},1024)]),_:2},1024))),256))]),re("",!0)])])),[[u]])}}}),zo={class:"flex items-center gap-1"},jo=se({__name:"ActivityBarHorizontal",setup(e){const{activity:t,onChangeActivity:a}=pa();return(n,s)=>{const o=me,r=Re,m=Ie,c=Ae,f=De;return D(),U("div",zo,[(D(!0),U(Te,null,$e(l(t),u=>(D(),te(f,null,{default:g(()=>[i(m,{"as-child":""},{default:g(()=>[i(r,{size:"iconMd",variant:u.isActive?"default":"ghost",onClick:p=>l(a)(u.id)},{default:g(()=>[i(o,{name:u.icon,class:"size-5!"},null,8,["name"])]),_:2},1032,["variant","onClick"])]),_:2},1024),i(c,{side:"bottom"},{default:g(()=>[_("p",null,ne(u.title),1)]),_:2},1024)]),_:2},1024))),256))])}}}),Bo={class:"drag-preview"},qo={class:"drag-preview__icon"},Ho={class:"drag-preview__text"},Go={key:0,class:"drag-preview__badge"},Wo=se({__name:"PseudomorphismDragItem",props:{count:{},itemName:{},itemType:{}},setup(e){const t=e,a=B(()=>t.count>1?Po:t.itemType==="folder"?Lo:ko),n=B(()=>t.count===1?t.itemName:`${t.count} items`),s=B(()=>t.count>1);return(o,r)=>(D(),U("div",Bo,[_("span",qo,[(D(),te(Xe(a.value),{size:16,"stroke-width":2}))]),_("span",Ho,ne(n.value),1),s.value?(D(),U("span",Go,ne(o.count),1)):re("",!0)]))}}),Ko=tn(Wo,[["__scopeId","data-v-93dbafcc"]]),Qo=["draggable"],Yo={key:1,class:"tree-row__spacer"},Xo={key:4,class:"tree-row__name"},Jo=["aria-invalid","aria-errormessage","onKeydown"],Zo=se({__name:"TreeRow",props:{node:{},isSelected:{type:Boolean},isExpanded:{type:Boolean},isFocused:{type:Boolean},dropIndicator:{},isEditing:{type:Boolean,default:!1},renameError:{default:""},allowDragAndDrop:{type:Boolean,default:!0},itemHeight:{default:24},indentSize:{default:20},baseIndent:{default:8}},emits:["click","dblclick","toggle","dragstart","dragover","dragleave","dragend","drop","contextmenu","rename","editingChange","cancelRename"],setup(e,{expose:t,emit:a}){const n=e,s=a,o=q(n.node.name),r=q(null),m=()=>{const S=o.value.trim();S&&S!==n.node.name?s("rename",S):s("cancelRename")},c=B(()=>!!n.renameError),f=()=>{if(c.value){u();return}m()},u=()=>{o.value=n.node.name,s("cancelRename")},p=async()=>{var S,b;await ze(),(S=r.value)==null||S.focus(),(b=r.value)==null||b.select()};Se(()=>n.isEditing,S=>{S&&(o.value=n.node.name,p())}),Se(()=>n.node.name,S=>{n.isEditing||(o.value=S)});const h=B(()=>({paddingLeft:`${n.node.depth*n.indentSize+n.baseIndent}px`,height:`${n.itemHeight}px`})),d=B(()=>n.node.type==="folder"&&n.isExpanded&&n.node.iconOpen||n.node.iconClose),v=B(()=>n.node.type==="folder"?n.isExpanded?"hugeicons:folder-02":"hugeicons:folder-01":"hugeicons:file-01"),y=B(()=>{var S,b,C;return{"tree-row":!0,"tree-row--selected":n.isSelected,"tree-row--focused":n.isFocused&&!n.isEditing,"tree-row--drop-before":((S=n.dropIndicator)==null?void 0:S.position)==="before","tree-row--drop-after":((b=n.dropIndicator)==null?void 0:b.position)==="after","tree-row--drop-inside":((C=n.dropIndicator)==null?void 0:C.position)==="inside"}}),w=B(()=>({transform:n.isExpanded?"rotate(90deg)":"rotate(0deg)"}));return t({focusInput:p}),(S,b)=>(D(),U("div",{class:he(y.value),style:Ve(h.value),draggable:S.allowDragAndDrop&&!S.isEditing,onClick:b[7]||(b[7]=C=>s("click",C)),onDblclick:b[8]||(b[8]=C=>s("dblclick",C)),onDragstart:b[9]||(b[9]=C=>s("dragstart",C)),onDragover:b[10]||(b[10]=C=>s("dragover",C)),onDragleave:b[11]||(b[11]=C=>s("dragleave",C)),onDragend:b[12]||(b[12]=C=>s("dragend",C)),onDrop:b[13]||(b[13]=C=>s("drop",C)),onContextmenu:b[14]||(b[14]=_e(C=>s("contextmenu",C),["right"]))},[S.node.type==="folder"?(D(),U("button",{key:0,class:"tree-row__chevron",style:Ve(w.value),onClick:b[0]||(b[0]=_e(C=>s("toggle"),["stop"]))},[i(l(me),{name:"hugeicons:arrow-right-01",class:"size-4"})],4)):(D(),U("div",Yo)),d.value?(D(),te(l(me),{key:2,name:d.value,class:he(["tree-row__icon size-4!",S.node.iconClass])},null,8,["name","class"])):(D(),te(Xe(l(me)),{key:3,name:v.value,class:he(["tree-row__icon",S.node.iconClass])},null,8,["name","class"])),S.isEditing?He((D(),U("input",{key:5,ref_key:"inputRef",ref:r,"onUpdate:modelValue":b[1]||(b[1]=C=>o.value=C),type:"text",class:he(["tree-row__edit-input",{"tree-row__edit-input--error":c.value}]),"aria-invalid":c.value,"aria-errormessage":c.value?`rename-error-${S.node.id}`:void 0,onInput:b[2]||(b[2]=C=>s("editingChange",o.value)),onBlur:f,onKeydown:[xt(_e(m,["stop"]),["enter"]),xt(u,["esc"]),b[3]||(b[3]=xt(_e(()=>{},["stop"]),["space"]))],onClick:b[4]||(b[4]=_e(()=>{},["stop"])),onDblclick:b[5]||(b[5]=_e(()=>{},["stop"]))},null,42,Jo)),[[Fa,o.value]]):(D(),U("span",Xo,ne(S.node.name),1)),S.isEditing?re("",!0):(D(),U("div",{key:6,class:"tree-row__actions",onClick:b[6]||(b[6]=_e(()=>{},["stop"]))},[_t(S.$slots,"actions",{node:S.node},void 0,!0)]))],46,Qo))}}),er=tn(Zo,[["__scopeId","data-v-af018028"]]),Pt=e=>typeof e=="object"&&e!==null&&"then"in e&&typeof e.then=="function",Ye=e=>Array.isArray(e)?e.filter(t=>typeof t=="string"):null,ht=e=>[...e],tr=()=>{var t,a,n,s;if(typeof window>"u")return!1;const e=window;return(a=(t=e.process)==null?void 0:t.versions)!=null&&a.electron?!0:!!((s=(n=e.navigator)==null?void 0:n.userAgent)!=null&&s.includes("Electron"))},Ft=()=>({loadExpandedIds:e=>{if(typeof window>"u")return null;const t=window.localStorage.getItem(`${e}_expanded`);if(!t)return null;try{return Ye(JSON.parse(t))}catch{return null}},saveExpandedIds:(e,t)=>{typeof window>"u"||window.localStorage.setItem(`${e}_expanded`,JSON.stringify(t))},clearExpandedIds:e=>{typeof window>"u"||window.localStorage.removeItem(`${e}_expanded`)}}),nr=(e={})=>{const t=e.pushDebounceMs??400,a=new Map,n=new Set,s=new Map,o=(p,h)=>{var d;(d=e.onError)==null||d.call(e,p,h)},r=()=>{const p=e.mode??"auto";return p==="web"?e.webStorage??Ft():p==="electron"?e.electronStorage??e.webStorage??Ft():tr()&&e.electronStorage?e.electronStorage:e.webStorage??Ft()},m=(p,h)=>{var S;const d=(S=e.apiSync)==null?void 0:S.pushExpandedIds;if(!d)return;const v=p.storageKey,y=s.get(v);y&&clearTimeout(y);const w=setTimeout(()=>{s.delete(v);const b=d(v,ht(h)).catch(C=>{o(C,"push")});n.add(b),b.finally(()=>{n.delete(b)})},t);s.set(v,w)},c=(p,h)=>{const v=r().saveExpandedIds(p.storageKey,ht(h));Pt(v)&&v.catch(y=>{o(y,"save")})},f=p=>{const d=r().loadExpandedIds(p.storageKey);return Pt(d)?(d.then(v=>{const y=Ye(v);y&&a.set(p.storageKey,y)}).catch(v=>{o(v,"load")}),null):Ye(d)};return{loadExpandedIds:p=>{const h=a.get(p.storageKey);if(h)return ht(h);const d=f(p);return d&&a.set(p.storageKey,d),d},saveExpandedIds:(p,h)=>{const d=Ye(p)??[];a.set(h.storageKey,d),c(h,d),m(h,d)},clearExpandedIds:p=>{var y;a.delete(p.storageKey);const h=s.get(p.storageKey);h&&(clearTimeout(h),s.delete(p.storageKey));const d=r(),v=(y=d.clearExpandedIds)==null?void 0:y.call(d,p.storageKey);Pt(v)&&v.catch(w=>{o(w,"clear")}),m(p,[])},preload:async p=>{var S;const h=r();let d=null;try{const b=await h.loadExpandedIds(p.storageKey);d=Ye(b)}catch(b){o(b,"preload")}const v=(S=e.apiSync)==null?void 0:S.pullExpandedIds;if(!v)return d&&a.set(p.storageKey,d),d;let y=null;try{const b=await v(p.storageKey);y=Ye(b)}catch(b){o(b,"pull")}const w=e.preferRemote?y??d:d??y;if(!w)return null;a.set(p.storageKey,w);try{await h.saveExpandedIds(p.storageKey,ht(w))}catch(b){o(b,"save")}return w},flush:async()=>{await Promise.all(Array.from(n))}}},On=window.setInterval,ar=["id"],or=se({__name:"FileTree",props:{initExpandedIds:{},initialData:{},validateRename:{},storageKey:{default:"vscode_tree_state"},allowSort:{type:Boolean,default:!1},allowDragAndDrop:{type:Boolean,default:!0},itemHeight:{default:24},indentSize:{default:20},baseIndent:{default:8},autoExpandDelay:{default:100},delayFocus:{default:50},autoScrollThreshold:{default:50},autoScrollSpeed:{default:10},overscan:{default:10},persistenceExtension:{default:()=>nr({mode:"web",pushDebounceMs:400})}},emits:["move","select","click","contextmenu","rename","cancel-rename"],setup(e,{expose:t,emit:a}){const n=e,s=a,o=ke({}),r=q(new Set(n.initExpandedIds||[])),m=q(new Set),c=q(null),f=q(null),u=q({}),p=B(()=>({storageKey:`${n.storageKey}_expanded`})),h=A=>Array.isArray(A)?A.filter(N=>typeof N=="string"):null,d=B(()=>({load:()=>{var N;const A=(N=n.persistenceExtension)==null?void 0:N.loadExpandedIds;if(!A)return null;try{const z=A(p.value);return h(z)}catch(z){return console.error("Failed to load expanded ids from persistence extension",z),null}},save:A=>{var z;const N=(z=n.persistenceExtension)==null?void 0:z.saveExpandedIds;if(N)try{N(A,p.value)}catch(M){console.error("Failed to save expanded ids using persistence extension",M)}}})),v=B(()=>n.persistenceExtension?d.value:null),y=B(()=>Object.values(o.value).filter(A=>A.parentId===null).map(A=>A.id)),w=B(()=>{const A=[],N=z=>{for(const M of z){A.push(M);const ee=o.value[M];ee.children&&ee.children.length>0&&r.value.has(M)&&N(ee.children)}};return N(y.value),A}),S=je("parentRef"),b=q(!1),C=q(0),x=Ma({get count(){return w.value.length},getScrollElement:()=>S.value,estimateSize:()=>n.itemHeight,overscan:n.overscan});Ua(()=>{C.value=Math.round(x.value.scrollOffset??0)||0}),Va(async()=>{await ze(),setTimeout(()=>{x.value.scrollToOffset(C.value)},0)});const R=q(null),P=q(null),Y=q(null),K=q(null),$=q(null),T=q(!1),I=q(null),k=B(()=>{if(!I.value||!T.value)return null;const A=I.value,N=w.value.indexOf(A);if(N===-1)return null;const z=o.value[A];if(!z)return null;let M=N;for(let ee=N+1;ee<w.value.length&&o.value[w.value[ee]].depth>z.depth;ee++)M=ee;return{top:N*n.itemHeight,height:(M-N+1)*n.itemHeight}}),L=B(()=>{if(!f.value)return null;const A=u.value[f.value];if(!A)return null;const N=w.value.indexOf(f.value);if(N===-1)return null;const z=o.value[f.value];if(!z)return null;const M=(N+1)*n.itemHeight+2,ee=z.depth*n.indentSize+n.baseIndent+20+22;return{top:M,left:ee,message:A}}),O=A=>{r.value.has(A)?r.value.delete(A):r.value.add(A),r.value=new Set(r.value)},J=(A,N)=>{if(A.ctrlKey||A.metaKey)m.value.has(N)?m.value.delete(N):m.value.add(N),m.value=new Set(m.value);else if(A.shiftKey&&c.value){const z=w.value.indexOf(c.value),M=w.value.indexOf(N),[ee,ue]=z<M?[z,M]:[M,z];m.value=new Set(w.value.slice(ee,ue+1))}else m.value=new Set([N]);c.value=N,s("select",Array.from(m.value)),A.type==="click"&&s("click",N,A)},Q=A=>{o.value[A].type==="folder"&&O(A)},ae=(A,N)=>{if(!n.allowDragAndDrop){A.preventDefault();return}R.value=N,T.value=!0;const z=o.value[N],M=m.value.has(N)&&m.value.size>1,ee=M?Array.from(m.value):[N];if(A.dataTransfer){A.dataTransfer.effectAllowed="move";const ue={nodeId:N,node:z,selectedNodeIds:M?ee:void 0};A.dataTransfer.setData("application/json",JSON.stringify(ue));const le=ce(ee.length,z.name,z.type);document.body.appendChild(le),A.dataTransfer.setDragImage(le,20,20),setTimeout(()=>{document.body.removeChild(le)},0)}},ce=(A,N,z)=>{const M=document.createElement("div"),ee=aa(Ko,{count:A,itemName:N,itemType:z});return Bt(ee,M),M.firstElementChild},fe=A=>{if(!S.value||!T.value)return;const N=S.value,z=N.getBoundingClientRect(),M=n.autoScrollThreshold,ee=n.autoScrollSpeed,ue=A.clientY-z.top,le=z.height;$.value&&(clearInterval($.value),$.value=null),ue<M&&ue>0?$.value=On(()=>{N.scrollTop>0&&(N.scrollTop-=ee)},16):ue>le-M&&ue<le&&($.value=On(()=>{const Be=N.scrollHeight-N.clientHeight;N.scrollTop<Be&&(N.scrollTop+=ee)},16))},ie=(A,N)=>{var M;let z=A;for(;z;){if(z===N)return!0;z=((M=o.value[z])==null?void 0:M.parentId)??null}return!1},ye=(A,N)=>{const M=A.currentTarget.getBoundingClientRect(),ee=A.clientY-M.top,ue=M.height,le=o.value[N];return!n.allowSort||le.type==="folder"&&ee>ue*.2&&ee<ue*.8?"inside":ee<ue/2?"before":"after"},H=(A,N)=>{if(A.preventDefault(),!n.allowDragAndDrop||!R.value||R.value===N)return;const z=o.value[N];fe(A);let M=null;if(z.type==="folder"?M=N:z.parentId&&(M=z.parentId),M===R.value||M&&ie(M,R.value)){I.value=null,P.value=null;return}if(M&&(I.value=M,P.value={nodeId:M,position:"inside"}),n.allowSort&&z.type==="folder"){const ue=ye(A,N);ue!=="inside"&&(I.value=null,P.value={nodeId:N,position:ue})}const ee=M||N;if(ee!==K.value){clearTimeout(Y.value),K.value=ee;const ue=o.value[ee];(ue==null?void 0:ue.type)==="folder"&&!r.value.has(ee)&&(Y.value=setTimeout(()=>{K.value===ee&&T.value&&(r.value.add(ee),r.value=new Set(r.value))},n.autoExpandDelay))}},E=()=>{},V=()=>{clearTimeout(Y.value),$.value&&(clearInterval($.value),$.value=null),T.value=!1,R.value=null,P.value=null,K.value=null,I.value=null},j=(A,N)=>{var ue,le;if(A.preventDefault(),!n.allowDragAndDrop)return;if(clearTimeout(Y.value),$.value&&(clearInterval($.value),$.value=null),!R.value){V();return}let z;try{const Be=(ue=A.dataTransfer)==null?void 0:ue.getData("application/json");if(Be){const mt=JSON.parse(Be);z=mt.selectedNodeIds||[mt.nodeId]}else z=[R.value]}catch{z=[R.value]}const M=I.value||N,ee=I.value?"inside":((le=P.value)==null?void 0:le.position)||"inside";if(z.includes(M)||z.some(Be=>ie(M,Be))){console.warn("Cannot drop item onto itself or into its own subtree"),V();return}if(!n.allowSort){s("move",z.length===1?z[0]:z,M,"inside"),V();return}s("move",z.length===1?z[0]:z,M,ee),V()},Z=A=>{if(!S.value)return;const N=w.value.indexOf(A);N!==-1&&x.value.scrollToIndex(N,{align:"center",behavior:"auto"})},de=A=>{if(!c.value)return;const N=w.value.indexOf(c.value);if(N===-1)return;let z=N;switch(A.key){case"ArrowDown":A.preventDefault(),z=Math.min(N+1,w.value.length-1);break;case"ArrowUp":A.preventDefault(),z=Math.max(N-1,0);break;case"ArrowRight":{A.preventDefault(),o.value[c.value].type==="folder"&&(r.value.has(c.value)?z=N+1:O(c.value));break}case"ArrowLeft":{A.preventDefault();const ee=o.value[c.value];ee.type==="folder"&&r.value.has(c.value)?O(c.value):ee.parentId&&(z=w.value.indexOf(ee.parentId));break}case"Enter":case" ":A.preventDefault(),o.value[c.value].type==="folder"?O(c.value):s("click",c.value,A);break}z!==N&&(c.value=w.value[z],Z(c.value))},oe=(A,N)=>{J(A,N),s("contextmenu",N,A)},ge=(A,N)=>{if(n.validateRename){const z=n.validateRename(A,N);if(z!==!0){u.value={...u.value,[A]:z},f.value=A;return}}if(u.value[A]){const z={...u.value};delete z[A],u.value=z}f.value=null,s("rename",A,N)},ve=A=>{if(u.value[A]){const N={...u.value};delete N[A],u.value=N}f.value=null,s("cancel-rename",A)},Me=(A,N)=>{if(!n.validateRename)return;const z=n.validateRename(A,N),M=!!u.value[A];if(z!==!0){u.value={...u.value,[A]:z};return}if(z===!0&&M){const ee={...u.value};delete ee[A],u.value=ee}},xe=A=>{if(u.value[A]){const N={...u.value};delete N[A],u.value=N}f.value=A};Se(()=>Array.from(r.value),A=>{var N;(N=v.value)==null||N.save(A)}),za(()=>{var N;n.initialData&&(o.value=n.initialData);const A=(N=v.value)==null?void 0:N.load();A!=null&&(r.value=new Set(A))}),Se(()=>n.initialData,A=>{A&&(o.value=A)},{deep:!0});const Ue=B(()=>{const A=[];for(const N in o.value){const z=o.value[N];z.type==="folder"&&A.push(z.id)}return A}),At=()=>{r.value=new Set(Ue.value)},Rt=()=>{r.value=new Set},$t=B(()=>{const A=Ue.value;if(A.length===0)return!1;for(const N of A)if(!r.value.has(N))return!1;return!0}),nt=A=>{const N=o.value[A];if(!N){console.warn(`Node ${A} not found`);return}const z=[];let M=N;for(;M.parentId!==null;){const ee=o.value[M.parentId];if(ee&&ee.type==="folder"&&z.push(ee.id),M=ee,!M)break}z.length>0&&(z.forEach(ee=>r.value.add(ee)),r.value=new Set(r.value)),setTimeout(()=>{if(w.value.indexOf(A)===-1){console.warn(`Node ${A} still not visible after expanding parents`);return}c.value=A,m.value=new Set([A]),s("select",[A]),Z(A)},n.delayFocus)},pt=()=>{c.value=null,m.value=new Set,s("select",[])},at=A=>{A.target.closest(".tree-row")||pt()};return t({expandAll:At,collapseAll:Rt,focusItem:nt,clearSelection:pt,startEditing:xe,isMouseInside:b,isExpandedAll:$t}),(A,N)=>{const z=me;return D(),U("div",{ref_key:"parentRef",ref:S,onMouseenter:N[1]||(N[1]=M=>b.value=!0),onMouseleave:N[2]||(N[2]=M=>b.value=!1),class:"file-tree",tabindex:"0",onKeydown:de,onClick:at},[_("div",{style:Ve({height:`${l(x).getTotalSize()}px`,width:"100%",position:"relative"})},[(D(!0),U(Te,null,$e(l(x).getVirtualItems(),M=>{var ee;return D(),U("div",{key:String(M.key),style:Ve({position:"absolute",top:0,left:0,width:"100%",height:`${M.size}px`,transform:`translateY(${M.start}px)`})},[ja([o.value[w.value[M.index]],m.value.has(w.value[M.index]),r.value.has(w.value[M.index]),c.value===w.value[M.index],f.value===w.value[M.index],!I.value&&((ee=P.value)==null?void 0:ee.nodeId)===w.value[M.index]?P.value:null,n.itemHeight,n.indentSize,n.baseIndent,n.allowDragAndDrop,u.value[w.value[M.index]]],()=>{var ue;return i(er,{node:o.value[w.value[M.index]],"is-selected":m.value.has(w.value[M.index]),"is-expanded":r.value.has(w.value[M.index]),"is-focused":c.value===w.value[M.index],"is-editing":f.value===w.value[M.index],"rename-error":u.value[w.value[M.index]]||"","drop-indicator":!I.value&&((ue=P.value)==null?void 0:ue.nodeId)===w.value[M.index]?P.value:null,"item-height":n.itemHeight,"indent-size":n.indentSize,"base-indent":n.baseIndent,"allow-drag-and-drop":n.allowDragAndDrop,onClick:le=>J(le,w.value[M.index]),onDblclick:le=>Q(w.value[M.index]),onToggle:le=>O(w.value[M.index]),onDragstart:le=>ae(le,w.value[M.index]),onDragover:le=>H(le,w.value[M.index]),onDragleave:E,onDragend:V,onDrop:le=>j(le,w.value[M.index]),onContextmenu:le=>oe(le,w.value[M.index]),onRename:le=>ge(w.value[M.index],le),onEditingChange:le=>Me(w.value[M.index],le),onCancelRename:le=>ve(w.value[M.index])},{actions:g(({node:le})=>[_t(A.$slots,"actions",{node:le},void 0,!0)]),_:2},1032,["node","is-selected","is-expanded","is-focused","is-editing","rename-error","drop-indicator","item-height","indent-size","base-indent","allow-drag-and-drop","onClick","onDblclick","onToggle","onDragstart","onDragover","onDrop","onContextmenu","onRename","onEditingChange","onCancelRename"])},N,0)],4)}),128)),i(Ba,{name:"tree-error"},{default:g(()=>[L.value?(D(),U("div",{key:0,id:`rename-error-${f.value}`,class:"flex items-start gap-1 text-xs font-normal pointer-events-none text-muted-foreground z-30 whitespace-break-spaces px-1 py-2 shadow-md border border-destructive border-l-[3px] rounded-md bg-popover",style:Ve({position:"absolute",top:`${L.value.top}px`,left:`${L.value.left}px`,right:"8px"}),role:"alert","aria-live":"assertive"},[i(z,{name:"lucide:alert-circle",class:"text-destructive size-4!","aria-hidden":"true"}),F(" "+ne(L.value.message),1)],12,ar)):re("",!0)]),_:1}),k.value&&T.value?(D(),U("div",{key:0,class:"tree-drop-overlay",style:Ve({position:"absolute",top:`${k.value.top}px`,left:0,width:"100%",height:`${k.value.height}px`})},null,4)):re("",!0)],4)],544)}}}),ft=tn(or,[["__scopeId","data-v-4940049d"]]);var We=(e=>(e.Tables="Tables",e.Functions="Functions",e.Views="Views",e))(We||{}),Pe=(e=>(e.Root="Root",e))(Pe||{});const rr={key:0,class:"flex items-center gap-2 w-44 truncate"},lr={key:1,class:"opacity-50"},sr={class:"flex items-center gap-2"},ir=se({__name:"ConnectionSelector",props:{class:{},workspaceId:{}},setup(e){const{connectionStore:t,createConnection:a,wsStateStore:n,openWorkspaceWithConnection:s}=Le(),{connectionId:o}=pe(n),{selectedConnection:r}=pe(t),m=e,c=q(!1),f=async v=>{typeof v=="string"&&v!==o.value&&await s({connId:v,wsId:m.workspaceId})},u=q(!1),p=v=>{a(v)},h=()=>{u.value=!0,c.value=!1},d=B(()=>t.getConnectionsByWorkspaceId(m.workspaceId));return(v,y)=>{const w=me,S=qa,b=rn;return D(),U(Te,null,[i(l(yo),{open:l(u),"editing-connection":null,"onUpdate:open":y[0]||(y[0]=C=>u.value=C),onAddNew:p,workspaceId:v.workspaceId},null,8,["open","workspaceId"]),i(l(nn),{"onUpdate:modelValue":f,"model-value":l(o),open:l(c),"onUpdate:open":y[1]||(y[1]=C=>Ee(c)?c.value=C:null)},{default:g(()=>[i(l(an),{class:he(l(on)(m.class,"w-48 cursor-pointer")),size:"sm"},{default:g(()=>{var C,x;return[l(r)?(D(),U("div",rr,[(D(),te(Xe((C=l(qt)(l(r).type))==null?void 0:C.icon),{class:"size-4! min-w-4!"})),F(" "+ne((x=l(r))==null?void 0:x.name),1)])):(D(),U("div",lr,"Select connection"))]}),_:1},8,["class"]),i(b,null,{default:g(()=>[i(l(oa),null,{default:g(()=>[_("div",{class:"flex px-2 py-0.5 h-8 hover:bg-muted rounded-md font-normal text-sm items-center gap-1 cursor-pointer",onClick:h},[i(w,{name:"lucide:plus"}),y[2]||(y[2]=F(" Add new connection "))]),l(d).length?(D(),te(S,{key:0})):re("",!0),(D(!0),U(Te,null,$e(l(d),C=>(D(),te(l(ln),{class:"cursor-pointer",value:C.id},{default:g(()=>{var x;return[_("div",sr,[(D(),te(Xe((x=l(qt)(C.type))==null?void 0:x.icon),{class:"size-4!"})),F(" "+ne(C.name),1)])]}),_:2},1032,["value"]))),256))]),_:1})]),_:1})]),_:1},8,["model-value","open"])],64)}}}),cr={key:0,class:"flex items-center gap-2 w-44 truncate"},ur={key:1,class:"opacity-50"},dr=se({__name:"SchemaSelector",props:{class:{}},setup(e){const t=e,{schemaStore:a,wsStateStore:n,setSchemaId:s}=Le(),{activeSchema:o,schemasByContext:r}=pe(a),{schemaId:m}=pe(n);return(c,f)=>{const u=rn;return D(),te(l(nn),{"onUpdate:modelValue":f[0]||(f[0]=p=>{l(s)(p)}),"model-value":l(m)},{default:g(()=>[i(l(an),{class:he(l(on)(t.class,"w-48 cursor-pointer")),size:"sm"},{default:g(()=>{var p;return[l(o)?(D(),U("div",cr,ne((p=l(o))==null?void 0:p.name),1)):(D(),U("div",ur,"Select connection"))]}),_:1},8,["class"]),i(u,null,{default:g(()=>[i(l(oa),null,{default:g(()=>[(D(!0),U(Te,null,$e(l(r),p=>(D(),te(l(ln),{value:p.name,class:"cursor-pointer"},{default:g(()=>[F(ne(p.name),1)]),_:2},1032,["value"]))),256))]),_:1})]),_:1})]),_:1},8,["model-value"])}}}),fr={class:"flex flex-col w-full shrink-0"},pr={key:0,class:"relative w-full items-center px-2 pt-1.5 space-y-1"},mr={key:0},vr={key:1},gr={class:"text-sm leading-none"},yr={key:0,class:"flex items-center"},hr={key:1,class:"px-2 pb-1"},br={class:"relative w-full"},et=se({__name:"ManagementSidebarHeader",props:Ht({title:{},showConnection:{type:Boolean,default:!1},showSchema:{type:Boolean,default:!1},workspaceId:{},showSearch:{type:Boolean,default:!1},searchPlaceholder:{default:"Search..."}},{search:{default:""},searchModifiers:{}}),emits:["update:search"],setup(e){const t=ra(e,"search"),a=()=>{t.value=""};return(n,s)=>(D(),U("div",fr,[n.showConnection||n.showSchema?(D(),U("div",pr,[n.showConnection?(D(),U("div",mr,[s[1]||(s[1]=_("p",{class:"text-sm leading-none block pb-1"},"Connections",-1)),i(ir,{class:"w-full!",workspaceId:n.workspaceId},null,8,["workspaceId"])])):re("",!0),n.showSchema?(D(),U("div",vr,[s[2]||(s[2]=_("p",{class:"text-sm leading-none block pb-1"},"Schemas",-1)),i(dr,{class:"w-full!"})])):re("",!0)])):re("",!0),_("div",{class:he(["px-2 flex items-center justify-between",n.showConnection||n.showSchema?"pt-2":"pt-0.5"])},[_("p",gr,ne(n.title),1),n.$slots.actions?(D(),U("div",yr,[_t(n.$slots,"actions")])):re("",!0)],2),n.showSearch?(D(),U("div",hr,[_("div",br,[i(l(sn),{type:"text",placeholder:n.searchPlaceholder,class:"pr-6 w-full h-8",modelValue:t.value,"onUpdate:modelValue":s[0]||(s[0]=o=>t.value=o)},null,8,["placeholder","modelValue"]),t.value?(D(),U("div",{key:0,class:"absolute right-2 top-1.5 w-4 cursor-pointer hover:bg-accent",onClick:a},[i(l(me),{name:"hugeicons:cancel-01",class:"stroke-3! text-muted-foreground"})])):re("",!0)])])):re("",!0)]))}}),wr={class:"flex flex-col h-full w-full overflow-y-auto"},Sr=se({__name:"ManagementErdDiagram",setup(e){const{schemaStore:t,connectToConnection:a,wsStateStore:n,tabViewStore:s}=Le(),{activeSchema:o}=pe(t),{connectionId:r,workspaceId:m,schemaId:c}=pe(n),f=q(!1),u=q(null),p=ke(""),h=ut(p,Ze),d=[Pe.Root],v=B(()=>{var P,Y;const x={},R=((P=o==null?void 0:o.value)==null?void 0:P.tables)||[];if(x[Pe.Root]={id:Pe.Root,parentId:null,name:"All Tables",type:"folder",depth:0,iconOpen:"hugeicons:structure-folder",iconClose:"hugeicons:structure-folder",children:[],data:{tabViewType:X.AllERD}},R.forEach(K=>{var T;const $=Dn({schemaName:((T=o.value)==null?void 0:T.name)||"",tableName:K});x[$]={id:$,parentId:Pe.Root,name:K,type:"file",depth:1,iconOpen:"hugeicons:flowchart-01",iconClose:"hugeicons:flowchart-01",data:{tabViewType:X.DetailERD}},x[Pe.Root].children.push($)}),h.value){const K=h.value.toLowerCase(),$={},T=x[Pe.Root],I=(Y=T.children)==null?void 0:Y.filter(k=>x[k].name.toLowerCase().includes(K));return I&&I.length>0&&($[Pe.Root]={...T,children:I},I.forEach(k=>{$[k]=x[k]})),$}return x}),y=async()=>{if(!r.value)throw new Error("No connection selected");f.value=!0,await a({wsId:m.value,connId:r.value,isRefresh:!0}),f.value=!1},w=B(()=>u.value?!u.value.isExpandedAll:!0),S=()=>{var x,R;w.value?(x=u.value)==null||x.expandAll():(R=u.value)==null||R.collapseAll()},b=async x=>{var T,I,k;if(!m.value)throw new Error("No workspace selected");if(!r.value)throw new Error("No connection selected");const R=(T=x.data)==null?void 0:T.tabViewType;if(R!==X.AllERD&&R!==X.DetailERD)return;const P=c.value||((I=o.value)==null?void 0:I.name)||"",Y=R===X.AllERD,K=Y?void 0:x.id||Dn({schemaName:((k=o.value)==null?void 0:k.name)||"",tableName:x.name}),$=Y?`erd-overview-${P||"all"}`:`erd-${K}`;await s.openTab({id:$,name:Y?"All Tables":x.name,icon:x.iconOpen||x.iconClose||"hugeicons:structure-folder",iconClass:x.iconClass,type:R,routeName:Y?"workspaceId-connectionId-erd":"workspaceId-connectionId-erd-tableId",routeParams:Y?{workspaceId:m.value,connectionId:r.value}:{workspaceId:m.value,connectionId:r.value,tableId:K||""},connectionId:r.value,workspaceId:m.value,schemaId:P,metadata:{type:R,tableName:Y?void 0:x.name,treeNodeId:x.id}}),await s.selectTab($)},C=async x=>{const R=v.value[x];R&&await b(R)};return Se(()=>s.activeTab,x=>{var R,P,Y,K,$;if(!x){(R=u.value)==null||R.clearSelection();return}if(!((P=u.value)!=null&&P.isMouseInside)){if(x.type===X.AllERD){v.value[Pe.Root]&&((Y=u.value)==null||Y.focusItem(Pe.Root));return}if(x.type===X.DetailERD&&typeof((K=x.metadata)==null?void 0:K.treeNodeId)=="string"){($=u.value)==null||$.focusItem(x.metadata.treeNodeId);return}}},{flush:"post",immediate:!0}),(x,R)=>{const P=me,Y=Re,K=Ie,$=Ae,T=De,I=Ke;return D(),U("div",wr,[i(l(et),{search:l(p),"onUpdate:search":R[0]||(R[0]=k=>Ee(p)?p.value=k:null),title:"ERD Diagram","show-connection":!0,"show-schema":!0,"workspace-id":l(m),"show-search":!0,"search-placeholder":"Search in diagram..."},{actions:g(()=>[i(T,null,{default:g(()=>[i(K,{"as-child":""},{default:g(()=>[i(Y,{size:"iconSm",variant:"ghost",onClick:S},{default:g(()=>[i(P,{name:l(w)?"hugeicons:unfold-more":"hugeicons:unfold-less",class:"size-4! min-w-4"},null,8,["name"])]),_:1})]),_:1}),i($,null,{default:g(()=>[F(ne(l(w)?"Expand All":"Collapse All"),1)]),_:1})]),_:1}),i(T,null,{default:g(()=>[i(K,{"as-child":""},{default:g(()=>[i(Y,{size:"iconSm",variant:"ghost",onClick:y},{default:g(()=>[i(P,{name:"hugeicons:redo",class:he(["size-4! min-w-4",l(f)&&"animate-spin"])},null,8,["class"])]),_:1})]),_:1}),i($,null,{default:g(()=>R[1]||(R[1]=[F(" Refresh ERD Data ")])),_:1})]),_:1})]),_:1},8,["search","workspace-id"]),Object.keys(l(v)).length===0?(D(),te(I,{key:0,title:"No tables found",desc:"There are no tables available to display in the ERD."})):re("",!0),i(ft,{ref_key:"fileTreeRef",ref:u,"init-expanded-ids":d,"storage-key":`${l(r)}-erd-tree`,"initial-data":l(v),"allow-drag-and-drop":!1,onClick:C},null,8,["storage-key","initial-data"])])}}}),xr={class:"w-full h-full overflow-y-auto"},Tr={class:"h-full"},Cr=se({__name:"ManagementExplorerTree",props:{treeData:{},storageKey:{},persistenceExtension:{},contextMenuItems:{},validateRename:{type:Function}},emits:["click-node","rename-node","cancel-rename","context-node","move-node","select-node","clear-context-menu"],setup(e,{expose:t,emit:a}){const n=e,s=a,o=je("fileTreeRef"),r=d=>{var v;(v=o.value)==null||v.startEditing(d)},m=d=>{var v;(v=o.value)==null||v.focusItem(d)},c=()=>{var d;(d=o.value)==null||d.collapseAll()},f=()=>{var d;(d=o.value)==null||d.expandAll()},u=()=>{var d;(d=o.value)==null||d.clearSelection()},p=B(()=>{var d;return((d=o.value)==null?void 0:d.isMouseInside)??!1}),h=B(()=>{var d;return((d=o.value)==null?void 0:d.isExpandedAll)||!1});return t({startEditing:r,focusItem:m,collapseAll:c,expandAll:f,clearSelection:u,isMouseInside:p,isExpandedAll:h}),(d,v)=>(D(),U("div",xr,[i(Dt,{"context-menu-items":d.contextMenuItems,onOnClearContextMenu:v[6]||(v[6]=y=>s("clear-context-menu"))},{default:g(()=>[_("div",Tr,[i(ft,{ref_key:"fileTreeRef",ref:o,class:"pt-1","initial-data":d.treeData,"allow-drag-and-drop":!0,"allow-sort":!1,"validate-rename":d.validateRename,"storage-key":d.storageKey,"persistence-extension":n.persistenceExtension,onClick:v[0]||(v[0]=y=>s("click-node",y)),onRename:v[1]||(v[1]=(y,w)=>s("rename-node",y,w)),onCancelRename:v[2]||(v[2]=y=>s("cancel-rename",y)),onContextmenu:v[3]||(v[3]=y=>s("context-node",y)),onSelect:v[4]||(v[4]=y=>s("select-node",y)),onMove:v[5]||(v[5]=(y,w,S)=>s("move-node",y,w,S))},null,8,["initial-data","validate-rename","storage-key","persistence-extension"])])]),_:1},8,["context-menu-items"])]))}}),Er=e=>{const t=q(null),a=o=>{t.value=e.resolveNodeById(o)},n=()=>{t.value=null},s=B(()=>{const o=[],r=t.value,m=(r==null?void 0:r.isFolder)||!r;return r&&o.push({title:r.title,type:G.LABEL}),m&&(o.push({title:"Add new file",icon:"lucide:file-plus-2",type:G.ACTION,select:()=>{var f;const c=(f=t.value)==null?void 0:f.id;ze(()=>e.onCreateFile(c))}}),o.push({title:"Add new folder",icon:"lucide:folder-plus",type:G.ACTION,select:()=>{var f;const c=(f=t.value)==null?void 0:f.id;ze(()=>e.onCreateFolder(c))}})),r&&(m&&o.push({type:G.SEPARATOR}),o.push({title:"Rename...",icon:"lucide:pencil",type:G.ACTION,select:()=>{var f;const c=(f=t.value)==null?void 0:f.id;c&&ze(()=>e.onRename(c))}}),o.push({title:"Delete",icon:"lucide:trash",type:G.ACTION,select:()=>{const c=t.value;c&&ze(()=>e.onDelete(c.id))}})),o});return{selectedItem:t,contextMenuItems:s,onRightClickItem:a,onClearContextMenu:n}},_r=e=>{const t={},a=(n,s,o)=>{n.forEach(r=>{var c,f;const m=((c=r.children)==null?void 0:c.map(u=>u.id))??[];t[r.id]={id:r.id,parentId:s,name:r.title,type:r.isFolder?"folder":"file",depth:o,iconOpen:r.icon,iconClose:r.closeIcon||r.icon,iconClass:r.iconClass,children:r.isFolder?m:void 0},(f=r.children)!=null&&f.length&&a(r.children,r.id,o+1)})};return a(e,null,0),t},Dr=({startEditingNode:e,focusNode:t,collapseAll:a,expandAll:n,isExpandedAll:s})=>{const o=cn(),r=Ha(),{openCodeQueryTab:m}=dt(),c=ke(""),f=ut(c,Ze),{treeNodeRef:u}=pe(r),p=ke([]),h=B(()=>f.value?u.value.searchByTitle(f.value):u.value.tree),d=B(()=>_r(h.value)),v=B(()=>String(o.params.workspaceId)),y=async({nodeId:L,isFolder:O})=>{const J=L?u.value.findNode(L):null,Q=o.params.connectionId,ae=o.params.workspaceId,ce={title:"",id:Rn(),icon:"lucide:folder-open",closeIcon:"lucide:folder",connectionId:Q,workspaceId:ae,createdAt:Gt().toISOString(),isFolder:!0,path:"",children:[]},fe={title:"",id:Rn(),icon:"lucide:file",connectionId:Q,workspaceId:ae,createdAt:Gt().toISOString(),isFolder:!1,path:"",children:void 0},ie=O?ce:fe;u.value.insertNode((J==null?void 0:J.id)||null,ie),u.value.sortByTitle(),await ze(),t(ie.id),e(ie.id)},w=()=>{if(p.value.length===0)return null;const L=p.value[0],O=u.value.findNode(L);return O?O.isFolder?O.id:O.parentId:null},S=()=>{y({nodeId:w(),isFolder:!1})},b=()=>{y({nodeId:w(),isFolder:!0})},C=L=>{p.value=L},x=L=>{u.value.deleteNode(L)},R=L=>{const O=u.value.findNode(L);O&&O.title===""&&x(O.id)},P=(L,O)=>{const J=u.value.findNode(L);if(!J)return;const Q=O.trim();if(!u.value.isExitNodeNameInFolder(Q,J.id,J.parentId||"")){if(!Q){R(L);return}u.value.updateNode(J.id,{title:Q}),ze(()=>{t(J.id)})}},Y=(L,O)=>{const J=u.value.findNode(L);if(!J)return!0;const Q=O.trim();return Q?u.value.isExitNodeNameInFolder(Q,J.id,J.parentId||"")?"A file or folder with this name already exists":!0:"Name cannot be empty"},K=L=>{const O=u.value.findNode(L);O&&(t(O.id),e(O.id))},$=(L,O,J)=>{const Q=u.value.findNode(O);if(!Q)return;const ae=Q.isFolder?Q.id:Q.parentId;(Array.isArray(L)?L:[L]).forEach(fe=>{const ie=u.value.findNode(fe);ie&&(ie.parentId||null)!==(ae||null)&&(u.value.moveNode(ie.id,ae||null),u.value.sortByTitle())})},T=Er({resolveNodeById:L=>u.value.findNode(L),onCreateFile:L=>{y({nodeId:L,isFolder:!1})},onCreateFolder:L=>{y({nodeId:L,isFolder:!0})},onRename:L=>{K(L)},onDelete:L=>{x(L)}}),I=()=>{s.value?a():n()},k=L=>{const O=u.value.findNode(L);!O||O.isFolder||m({id:O.id,name:O.title,icon:O.icon})};return{contextMenuItems:T.contextMenuItems,explorerStorageKey:v,mappedExplorerFileTreeData:d,onAddFile:S,onAddFolder:b,onSelectNode:C,onCancelEditNode:R,onClearContextMenu:T.onClearContextMenu,onClickNode:k,isExpandedAll:s,onToggleCollapseExplorer:I,onMoveNode:$,onRenameFile:P,onTreeContextMenu:T.onRightClickItem,searchInput:c,validateRename:Y}},Ir={class:"flex flex-col h-full w-full overflow-y-auto"},Ar={class:"flex gap-2 justify-center"},Rr=se({__name:"ManagementExplorer",setup(e){const{tabViewStore:t}=Le(),a=je("treePanelRef"),{contextMenuItems:n,explorerStorageKey:s,mappedExplorerFileTreeData:o,onAddFile:r,onAddFolder:m,onCancelEditNode:c,onClearContextMenu:f,onClickNode:u,isExpandedAll:p,onToggleCollapseExplorer:h,onMoveNode:d,onRenameFile:v,onSelectNode:y,onTreeContextMenu:w,searchInput:S,validateRename:b}=Dr({startEditingNode:C=>{var x;return(x=a.value)==null?void 0:x.startEditing(C)},focusNode:C=>{var x;return(x=a.value)==null?void 0:x.focusItem(C)},collapseAll:()=>{var C;return(C=a.value)==null?void 0:C.collapseAll()},expandAll:()=>{var C;return(C=a.value)==null?void 0:C.expandAll()},isExpandedAll:B(()=>{var C;return((C=a.value)==null?void 0:C.isExpandedAll)??!1})});return Se(()=>t.activeTab,C=>{var x,R,P,Y;if(!C){(x=a.value)==null||x.clearSelection();return}if(!((R=a.value)!=null&&R.isMouseInside)&&(C==null?void 0:C.type)===X.CodeQuery){const K=(P=C.metadata)==null?void 0:P.treeNodeId;typeof K=="string"&&((Y=a.value)==null||Y.focusItem(K))}},{flush:"post",immediate:!0}),(C,x)=>{const R=me,P=Re,Y=Ie,K=Ae,$=De,T=Ke;return D(),U("div",Ir,[i(l(et),{search:l(S),"onUpdate:search":x[0]||(x[0]=I=>Ee(S)?S.value=I:null),title:"Explorer","show-search":!0},{actions:g(()=>[i($,null,{default:g(()=>[i(Y,{"as-child":""},{default:g(()=>[i(P,{size:"iconSm",variant:"ghost",onClick:l(r)},{default:g(()=>[i(R,{name:"hugeicons:file-add",class:"size-4! min-w-4"})]),_:1},8,["onClick"])]),_:1}),i(K,null,{default:g(()=>x[1]||(x[1]=[F(" New File ")])),_:1})]),_:1}),i($,null,{default:g(()=>[i(Y,{"as-child":""},{default:g(()=>[i(P,{size:"iconSm",variant:"ghost",onClick:l(m)},{default:g(()=>[i(R,{name:"hugeicons:folder-add",class:"size-4! min-w-4"})]),_:1},8,["onClick"])]),_:1}),i(K,null,{default:g(()=>x[2]||(x[2]=[F(" New Folder ")])),_:1})]),_:1}),i($,null,{default:g(()=>[i(Y,{"as-child":""},{default:g(()=>[i(P,{size:"iconSm",variant:"ghost",onClick:l(h)},{default:g(()=>[i(R,{name:l(p)?"hugeicons:unfold-less":"hugeicons:unfold-more",class:"size-4! min-w-4"},null,8,["name"])]),_:1},8,["onClick"])]),_:1}),i(K,null,{default:g(()=>[F(ne(l(p)?"Collapse All":"Expand All"),1)]),_:1})]),_:1})]),_:1},8,["search"]),Object.keys(l(o)).length===0?(D(),te(T,{key:0,title:"No files found",desc:"Create your first file or folder to get started."},{default:g(()=>[_("div",Ar,[i(P,{size:"xs",variant:"outline",onClick:l(r)},{default:g(()=>[i(R,{name:"hugeicons:file-add"}),x[3]||(x[3]=F(" New File "))]),_:1},8,["onClick"]),i(P,{size:"xs",variant:"outline",onClick:l(m)},{default:g(()=>[i(R,{name:"hugeicons:folder-add"}),x[4]||(x[4]=F(" New Folder "))]),_:1},8,["onClick"])])]),_:1})):(D(),te(Cr,{key:1,ref_key:"treePanelRef",ref:a,"tree-data":l(o),"storage-key":l(s),"context-menu-items":l(n),"validate-rename":l(b),onClickNode:l(u),onSelectNode:l(y),onRenameNode:l(v),onCancelRename:l(c),onContextNode:l(w),onMoveNode:l(d),onClearContextMenu:l(f)},null,8,["tree-data","storage-key","context-menu-items","validate-rename","onClickNode","onSelectNode","onRenameNode","onCancelRename","onContextNode","onMoveNode","onClearContextMenu"]))])}}});function $r(e,t,a){return`CALL "${e}"."${t}"();`}function Or(e,t,a){return`SELECT * FROM "${e}"."${t}"();`}const bn=e=>(e||"").split(",").map(t=>t.trim().split(" ")[1]).join(", ");function Nr(e,t,a=!1,n){const s=bn(n);return`DROP FUNCTION IF EXISTS "${e}"."${t}"(${s})${a?" CASCADE":""};`}function kr(e,t,a,n){const s=bn(n);return`ALTER FUNCTION "${e}"."${t}"(${s}) RENAME TO "${a}";`}function Lr(e,t,a=!1){return`DROP TABLE IF EXISTS "${e}"."${t}"${a?" CASCADE":""};`}function Pr(e,t,a){return`ALTER TABLE "${e}"."${t}" RENAME TO "${a}";`}function Fr(e,t,a=!1,n=!1){return`DROP ${a?"MATERIALIZED VIEW":"VIEW"} IF EXISTS "${e}"."${t}"${n?" CASCADE":""};`}function Mr(e,t,a,n=!1){return`ALTER ${n?"MATERIALIZED VIEW":"VIEW"} "${e}"."${t}" RENAME TO "${a}";`}function Ur(e,t,a=!1){return`REFRESH MATERIALIZED VIEW ${a?"CONCURRENTLY ":""}"${e}"."${t}";`}function Vr(e,t,a){return`SELECT ${a!=null&&a.length?a.map(s=>`"${s}"`).join(", "):"*"}
|
|
17
|
+
FROM "${e}"."${t}"
|
|
18
|
+
WHERE 1=1
|
|
19
|
+
-- Add your conditions here
|
|
20
|
+
LIMIT 100;`}const zr=(e,t)=>{const a=B(()=>{var s;return`${(s=e==null?void 0:e.value)==null?void 0:s.schemaName}.${We.Tables}`});return{fileTreeData:B(()=>{var v,y,w,S;const s=(v=e==null?void 0:e.value)==null?void 0:v.schemaName,o=((y=e==null?void 0:e.value)==null?void 0:y.tables)||[],r=((w=e==null?void 0:e.value)==null?void 0:w.functions)||[],m=((S=e==null?void 0:e.value)==null?void 0:S.views)||[],c={},f=(b,C)=>{const x=bn(C);return`${b}(${x})`},u=(b,C,x,R,P,Y)=>{c[b]={id:b,parentId:null,name:C,type:"folder",depth:0,iconOpen:x,iconClose:R,iconClass:Y,children:[],data:{tabViewType:P}}},p=`${s}.${We.Functions}`,h=a.value,d=`${s}.${We.Views}`;if(u(p,We.Functions,"material-icon-theme:folder-functions-open","material-icon-theme:folder-functions",X.FunctionsOverview),u(h,We.Tables,"material-icon-theme:folder-database-open","material-icon-theme:folder-database",X.TableOverview),u(d,We.Views,"material-icon-theme:folder-enum-open","material-icon-theme:folder-enum",X.ViewOverview),r.forEach(({name:b,oId:C,type:x,parameters:R})=>{const P=`${s}.${String(C)}`,Y=f(b,R);c[P]={id:P,parentId:p,name:Y,type:"file",depth:1,iconOpen:"gravity-ui:function",iconClose:"gravity-ui:function",iconClass:x===In.Function?"text-blue-400":"text-orange-400",data:{tabViewType:X.FunctionsDetail,itemValue:{title:Y,name:b,id:C,parameters:R,tabViewType:X.FunctionsDetail,icon:"gravity-ui:function",iconClass:x===In.Function?"text-blue-400":"text-orange-400"},parameters:R}},c[p].children.push(P)}),o.forEach(b=>{const C=`${s}.${b}`;c[C]={id:C,parentId:h,name:b,type:"file",depth:1,iconOpen:"hugeicons:grid-table",iconClose:"hugeicons:grid-table",iconClass:"text-yellow-400",data:{tabViewType:X.TableDetail,itemValue:{title:b,name:b,id:b,tabViewType:X.TableDetail,icon:"hugeicons:grid-table",iconClass:"text-yellow-400"}}},c[h].children.push(C)}),m.forEach(({name:b,oid:C,type:x})=>{const R=`${s}.${String(C)}`;c[R]={id:R,parentId:d,name:b,type:"file",depth:1,iconOpen:x===Fe.View?"hugeicons:property-view":"hugeicons:property-new",iconClose:x===Fe.View?"hugeicons:property-view":"hugeicons:property-new",iconClass:x===Fe.View?"text-green-700":"text-orange-500",data:{tabViewType:X.ViewDetail,itemValue:{title:b,name:b,id:C,tabViewType:X.ViewDetail,icon:x===Fe.View?"hugeicons:property-view":"hugeicons:property-new",iconClass:x===Fe.View?"text-green-700":"text-orange-500"}}},c[d].children.push(R)}),t.value){const b=t.value.toLowerCase(),C={};return[p,h,d].forEach(x=>{var Y;const R=c[x];if(!R)return;const P=(Y=R.children)==null?void 0:Y.filter(K=>{const $=c[K];return $==null?void 0:$.name.toLowerCase().includes(b)});P&&P.length>0&&(C[x]={...R,children:P},P.forEach(K=>{C[K]=c[K]}))}),C}return c}),defaultFolderOpenId:a}},jr={class:"py-2"},Br=se({__name:"RenameDialog",props:Ht({open:{type:Boolean},tabViewType:{},currentName:{}},{open:{type:Boolean,required:!0},openModifiers:{}}),emits:Ht(["confirm","cancel"],["update:open"]),setup(e,{emit:t}){const a=e,n=ra(e,"open"),s=t,o=q("");Se(n,c=>{c&&(o.value=a.currentName||"")});const r=()=>{o.value&&o.value!==a.currentName?s("confirm",o.value):n.value=!1},m=()=>{n.value=!1,s("cancel")};return(c,f)=>(D(),te(l(hn),{open:n.value,"onUpdate:open":f[1]||(f[1]=u=>n.value=u)},{default:g(()=>[i(l(fn),{class:"border w-96!"},{default:g(()=>[i(l(pn),null,{default:g(()=>[i(l(mn),null,{default:g(()=>[F(" Rename "+ne(c.tabViewType===l(X).FunctionsDetail?"Function":"Table"),1)]),_:1}),i(l(vn),null,{default:g(()=>[F(" Enter a new name for the "+ne(c.tabViewType===l(X).FunctionsDetail?"function":"table")+". ",1)]),_:1})]),_:1}),_("div",jr,[i(l(sn),{modelValue:l(o),"onUpdate:modelValue":f[0]||(f[0]=u=>Ee(o)?o.value=u:null),placeholder:`New ${c.tabViewType===l(X).FunctionsDetail?"function":"table"} name`,class:"w-full",onKeyup:xt(r,["enter"])},null,8,["modelValue","placeholder"])]),i(l(gn),null,{default:g(()=>[i(l(yn),{onClick:m},{default:g(()=>f[2]||(f[2]=[F(" Cancel ")])),_:1}),i(l(ca),{onClick:r},{default:g(()=>f[3]||(f[3]=[F(" Rename ")])),_:1})]),_:1})]),_:1})]),_:1},8,["open"]))}}),qr=se({__name:"SqlPreviewDialog",props:{open:{type:Boolean},sql:{},title:{},isLoading:{type:Boolean}},emits:["update:open"],setup(e,{emit:t}){const a=e,n=t,{copied:s,handleCopy:o,getCopyIcon:r,getCopyTooltip:m}=ua(),c=()=>o(a.sql),f=()=>{n("update:open",!1)};return(u,p)=>{const h=me,d=da;return D(),te(l(hn),{open:u.open,"onUpdate:open":p[0]||(p[0]=v=>n("update:open",v))},{default:g(()=>[i(l(fn),{class:"border w-[55vw]! max-w-[55vw]!"},{default:g(()=>[i(la,{visible:u.isLoading},null,8,["visible"]),i(l(pn),null,{default:g(()=>[i(l(mn),{class:"flex items-center text-base font-medium"},{default:g(()=>[i(h,{name:"lucide:code",class:"size-4 mr-2"}),F(" "+ne(u.title),1)]),_:1}),i(l(vn),null,{default:g(()=>p[1]||(p[1]=[F(" Generated SQL statement. Click copy to use. ")])),_:1})]),_:1}),i(d,{code:u.sql,"show-copy-button":"","max-height":"24rem"},null,8,["code"]),i(l(gn),null,{default:g(()=>[i(l(yn),{class:"border font-normal",onClick:f},{default:g(()=>p[2]||(p[2]=[F(" Close ")])),_:1}),i(l(ca),{class:"border font-normal flex gap-1",onClick:c},{default:g(()=>[i(h,{name:l(r)(l(s)),class:"size-4"},null,8,["name"]),F(" "+ne(l(m)(l(s),"Copy to Clipboard")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["open"])}}});function Hr(e,t,a){const{getSchemaName:n,executeWithSafeMode:s,showSqlPreview:o,executeWithLoading:r}=a;return{onDeleteFunction:async()=>{if(!t.selectedItem.value||t.selectedItem.value.tabViewType!==X.FunctionsDetail||!t.selectedItem.value.name)return;const d=Nr(n(),t.selectedItem.value.name,!1,t.selectedItem.value.parameters),v=t.selectedItem.value.name;await s(d,"delete",async()=>{await r(async()=>{await $fetch("/api/functions/delete",{method:"POST",body:{...Ce(e.connection.value),schemaName:n(),functionName:v}}),be.success("Function deleted successfully"),await e.onRefreshSchema()},t.isFetching,"Failed to delete function")})},onRenameFunction:()=>{!t.selectedItem.value||t.selectedItem.value.tabViewType!==X.FunctionsDetail||!t.selectedItem.value.name||(t.renameDialogType.value=X.FunctionsDetail,t.renameDialogValue.value=t.selectedItem.value.name,t.renameDialogOpen.value=!0,t.renameDialogParameters.value=t.selectedItem.value.parameters||"")},performRenameFunction:async d=>{const v=kr(n(),t.renameDialogValue.value,d,t.renameDialogParameters.value);await s(v,"save",async()=>{await r(async()=>{await $fetch("/api/functions/rename",{method:"POST",body:{...Ce(e.connection.value),schemaName:n(),oldName:t.renameDialogValue.value,newName:d}}),be.success("Function renamed successfully"),await e.onRefreshSchema()},t.isFetching,"Failed to rename function")})},onGenFunctionCallSQL:async()=>{t.selectedItem.value&&(o("","CALL Statement"),t.isFetching.value=!0,await r(async()=>{const d=await $fetch("/api/functions/signature",{method:"POST",body:{...Ce(e.connection.value),functionId:t.selectedItem.value.id}}),v=n(),y=(d==null?void 0:d.name)||"";let w;if(d!=null&&d.parameters&&d.parameters.length>0){const S=d.parameters.filter(b=>b.mode==="IN"||b.mode==="INOUT"||b.mode==="VARIADIC");if(S.length>0){const b=S.map(x=>`${x.name}::${x.type}`).join(", "),C=S.map(x=>`:${x.name}`).join(", ");w=`-- ${b}
|
|
21
|
+
CALL "${v}"."${y}"(${C});`}else w=`CALL "${v}"."${y}"();`}else w=$r(v,y);t.sqlPreviewDialogSQL.value=w},t.isFetching,"Failed to get function signature"))},onGenFunctionSelectSQL:async()=>{t.selectedItem.value&&(o("","SELECT Function"),t.isFetching.value=!0,await r(async()=>{const d=await $fetch("/api/functions/signature",{method:"POST",body:{...Ce(e.connection.value),functionId:t.selectedItem.value.id}}),v=n(),y=(d==null?void 0:d.name)||"";let w;if(d!=null&&d.parameters&&d.parameters.length>0){const S=d.parameters.filter(b=>b.mode==="IN"||b.mode==="INOUT"||b.mode==="VARIADIC");if(S.length>0){const b=S.map(x=>`${x.name}::${x.type}`).join(", "),C=S.map(x=>`:${x.name}`).join(", ");w=`-- ${b}
|
|
22
|
+
SELECT * FROM "${v}"."${y}"(${C});`}else w=`SELECT * FROM "${v}"."${y}"();`}else w=Or(v,y);t.sqlPreviewDialogSQL.value=w},t.isFetching,"Failed to get function signature"))},onGenFunctionDDL:async()=>{!t.selectedItem.value||t.selectedItem.value.tabViewType!==X.FunctionsDetail||await r(async()=>{o("","Function DDL");const d=await $fetch("/api/functions/definition",{method:"POST",body:{...Ce(e.connection.value),functionId:t.selectedItem.value.id}});if(d)o(d,"Function DDL");else throw new Error("Could not retrieve function definition")},t.isFetching,"Failed to get function DDL")}}}function Gr(){const e=q(!1),t=q(0),a=q(null);return{isDownloading:e,downloadedBytes:t,error:a,downloadStream:async s=>{const{url:o,method:r="POST",body:m,filename:c,contentType:f}=s;e.value=!0,t.value=0,a.value=null;const u=be.loading(`Exporting ${c}...`,{description:"Starting download..."});try{const p=await fetch(o,{method:r,headers:{"Content-Type":"application/json"},body:m?JSON.stringify(m):void 0});if(!p.ok){let C="Export failed";try{C=(await p.json()).message||C}catch{}throw new Error(C)}if(!p.body)throw new Error("Response body is not available for streaming");const h=p.body.getReader(),d=[];let v=0;for(;;){const{done:C,value:x}=await h.read();if(C)break;d.push(x),v+=x.length,t.value=v;const R=$n(v);be.loading(`Exporting ${c}...`,{id:u,description:`Downloaded ${R}`,position:"bottom-right"})}const y=new Blob(d,{type:f||p.headers.get("Content-Type")||"application/octet-stream"}),w=URL.createObjectURL(y),S=document.createElement("a");S.href=w,S.download=c,document.body.appendChild(S),S.click(),document.body.removeChild(S),URL.revokeObjectURL(w);const b=$n(v);return be.success(`Exported ${c}`,{id:u,description:`${b} downloaded`,position:"bottom-right"}),{success:!0,size:v}}catch(p){const h=p;return a.value=h,be.error("Export failed",{id:u,description:h.message,position:"bottom-right"}),{success:!1,error:h}}finally{e.value=!1}}}}var Tt=(e=>(e.CSV="csv",e.JSON="json",e.SQL="sql",e))(Tt||{});function Wr(e,t,a){const{getSchemaName:n,executeWithSafeMode:s,showSqlPreview:o,getTableColumns:r,getTableColumnsMetadata:m,getPrimaryKeyColumns:c,getColumnPlaceholder:f,executeWithLoading:u}=a;return{onExportTableData:T=>{if(!t.selectedItem.value||t.selectedItem.value.tabViewType!==X.TableDetail||!t.selectedItem.value.name)return;const I=t.selectedItem.value.name,k=document.createElement("form");k.method="POST",k.action="/api/tables/export",k.style.display="none";const O={...Ce(e.connection.value),schemaName:n(),tableName:I,format:T};for(const[J,Q]of Object.entries(O))if(Q!==void 0){const ae=document.createElement("input");ae.type="hidden",ae.name=J,ae.value=typeof Q=="object"?JSON.stringify(Q):Q.toString(),k.appendChild(ae)}document.body.appendChild(k),k.submit(),document.body.removeChild(k),be.info(`Exporting ${I} as ${T.toUpperCase()}...`)},onExportTableDataWithProgressInClient:async T=>{if(!t.selectedItem.value||t.selectedItem.value.tabViewType!==X.TableDetail||!t.selectedItem.value.name)return;const I=t.selectedItem.value.name,{downloadStream:k}=Gr(),L={sql:"application/sql",json:"application/json",csv:"text/csv"},O=Gt().format("YYYY-MM-DD_HH-mm");await k({url:"/api/tables/export",method:"POST",body:{...Ce(e.connection.value),schemaName:n(),tableName:I,format:T},filename:`${I}_${O}.${T}`,contentType:L[T]})},onImportTableData:()=>{be.info("Import feature coming soon")},onDeleteTable:async()=>{if(!t.selectedItem.value||t.selectedItem.value.tabViewType!==X.TableDetail||!t.selectedItem.value.name)return;const T=Lr(n(),t.selectedItem.value.name,!1);await s(T,"delete",async()=>{await u(async()=>{await $fetch("/api/query/execute",{method:"POST",body:{...Ce(e.connection.value),query:T}}),be.success("Table deleted successfully"),await e.onRefreshSchema()},t.isFetching,"Failed to delete table")})},onRenameTable:()=>{!t.selectedItem.value||t.selectedItem.value.tabViewType!==X.TableDetail||!t.selectedItem.value.name||(t.renameDialogType.value=X.TableDetail,t.renameDialogValue.value=t.selectedItem.value.name,t.renameDialogOpen.value=!0,t.renameDialogParameters.value="")},performRenameTable:async T=>{const I=Pr(n(),t.renameDialogValue.value,T);await s(I,"save",async()=>{await u(async()=>{await $fetch("/api/query/execute",{method:"POST",body:{...Ce(e.connection.value),query:I}}),be.success("Table renamed successfully"),await e.onRefreshSchema()},t.isFetching,"Failed to rename table")})},onGenSelectSQL:()=>{if(!t.selectedItem.value||!t.selectedItem.value.name)return;const T=r(t.selectedItem.value.name),I=n(),k=t.selectedItem.value.name,O=`SELECT ${T.length>0?T.map(J=>`"${J}"`).join(", "):"*"}
|
|
23
|
+
FROM "${I}"."${k}";
|
|
24
|
+
-- WHERE ?
|
|
25
|
+
-- LIMIT 100 OFFSET 0`;o(O,"SELECT Statement")},onGenInsertSQL:()=>{if(!t.selectedItem.value||!t.selectedItem.value.name)return;const T=m(t.selectedItem.value.name),I=n(),k=t.selectedItem.value.name;if(T.length>0){const L=T.map(Q=>`"${Q.name}"`).join(", "),O=T.map(Q=>f(Q)).join(", "),J=`INSERT INTO "${I}"."${k}" (${L})
|
|
26
|
+
VALUES (${O});`;o(J,"INSERT Statement")}else{const L=`INSERT INTO "${I}"."${k}" ("column1", "column2", ...)
|
|
27
|
+
VALUES (value1, value2, ...);`;o(L,"INSERT Statement")}},onGenUpdateSQL:()=>{if(!t.selectedItem.value||!t.selectedItem.value.name)return;const T=m(t.selectedItem.value.name),I=c(t.selectedItem.value.name),k=n(),L=t.selectedItem.value.name,O=T.filter(ce=>!I.includes(ce.name)),J=O.length>0?O.map(ce=>` "${ce.name}" = ${f(ce)}`).join(`,
|
|
28
|
+
`):` "column1" = value1,
|
|
29
|
+
"column2" = value2`,Q=I.length>0?I.map(ce=>`"${ce}" = ?`).join(" AND "):"1=0 -- Add your WHERE clause",ae=`UPDATE "${k}"."${L}"
|
|
30
|
+
SET
|
|
31
|
+
${J}
|
|
32
|
+
WHERE ${Q};`;o(ae,"UPDATE Statement")},onGenDeleteSQL:()=>{if(!t.selectedItem.value||!t.selectedItem.value.name)return;const T=c(t.selectedItem.value.name),I=n(),k=t.selectedItem.value.name,L=T.length>0?T.map(J=>`"${J}" = ?`).join(" AND "):"1=0 -- Add your WHERE clause (safety: 1=0 to prevent accidental deletes)",O=`DELETE FROM "${I}"."${k}"
|
|
33
|
+
WHERE ${L};`;o(O,"DELETE Statement")},onGenMergeSQL:()=>{if(!t.selectedItem.value||!t.selectedItem.value.name)return;const T=r(t.selectedItem.value.name),I=c(t.selectedItem.value.name),k=n(),L=t.selectedItem.value.name,O=kt(L),J=T.length>0?T.map(ye=>`"${ye}"`).join(", "):'"column1", "column2"',Q=`"${O}"`,ae=I.length>0?I.map(ye=>`${Q}."${ye}" = src."${ye}"`).join(" AND "):`${Q}."id" = src."id"`,ce=T.length>0?T.filter(ye=>!I.includes(ye)).map(ye=>` "${ye}" = src."${ye}"`).join(`,
|
|
34
|
+
`):' "column1" = src."column1"',fe=T.length>0?T.map(ye=>`src."${ye}"`).join(", "):'src."column1", src."column2"',ie=`MERGE INTO "${k}"."${L}" AS ${Q}
|
|
35
|
+
USING (SELECT ${J} FROM source_table) AS src
|
|
36
|
+
ON ${ae}
|
|
37
|
+
WHEN MATCHED THEN
|
|
38
|
+
UPDATE SET
|
|
39
|
+
${ce}
|
|
40
|
+
WHEN NOT MATCHED THEN
|
|
41
|
+
INSERT (${J})
|
|
42
|
+
VALUES (${fe});`;o(ie,"MERGE Statement")},onGenInsertOnConflictSQL:()=>{if(!t.selectedItem.value||!t.selectedItem.value.name)return;const T=m(t.selectedItem.value.name),I=c(t.selectedItem.value.name),k=n(),L=t.selectedItem.value.name,O=T.length>0?T.map(ie=>`"${ie.name}"`).join(", "):'"column1", "column2"',J=T.length>0?T.map(ie=>f(ie)).join(", "):"value1, value2",Q=I.length>0?I.map(ie=>`"${ie}"`).join(", "):'"id"',ae=T.filter(ie=>!I.includes(ie.name)),ce=ae.length>0?ae.map(ie=>` "${ie.name}" = EXCLUDED."${ie.name}"`).join(`,
|
|
43
|
+
`):' "column1" = EXCLUDED."column1"',fe=`INSERT INTO "${k}"."${L}" (${O})
|
|
44
|
+
VALUES (${J})
|
|
45
|
+
ON CONFLICT (${Q})
|
|
46
|
+
DO UPDATE SET
|
|
47
|
+
${ce};`;o(fe,"INSERT ON CONFLICT")},onGenUpdateFromSQL:()=>{if(!t.selectedItem.value||!t.selectedItem.value.name)return;const T=r(t.selectedItem.value.name),I=c(t.selectedItem.value.name),k=n(),L=t.selectedItem.value.name,J=`"${kt(L)}"`,Q=T.length>0?T.filter(fe=>!I.includes(fe)).map(fe=>` "${fe}" = src."${fe}"`).join(`,
|
|
48
|
+
`):' "column1" = src."column1"',ae=I.length>0?I.map(fe=>`${J}."${fe}" = src."${fe}"`).join(" AND "):`${J}."id" = src."id"`,ce=`UPDATE "${k}"."${L}" AS ${J}
|
|
49
|
+
SET
|
|
50
|
+
${Q}
|
|
51
|
+
FROM source_table AS src
|
|
52
|
+
WHERE ${ae};`;o(ce,"UPDATE FROM")},onGenDeleteUsingSQL:()=>{if(!t.selectedItem.value||!t.selectedItem.value.name)return;const T=c(t.selectedItem.value.name),I=n(),k=t.selectedItem.value.name,O=`"${kt(k)}"`,J=T.length>0?T.map(ae=>`${O}."${ae}" = src."${ae}"`).join(" AND "):`${O}."id" = src."id"`,Q=`DELETE FROM "${I}"."${k}" AS ${O}
|
|
53
|
+
USING source_table AS src
|
|
54
|
+
WHERE ${J};`;o(Q,"DELETE USING")},onGenTableDDL:async()=>{!t.selectedItem.value||!t.selectedItem.value.name||(o("","Table DDL"),await u(async()=>{const T=await $fetch("/api/tables/ddl",{method:"POST",body:{...Ce(e.connection.value),schemaName:n(),tableName:t.selectedItem.value.name}});o(T,"Table DDL")},t.isFetching,"Failed to get table DDL"))}}}function Kr(e,t,a){const{getSchemaName:n,executeWithSafeMode:s,showSqlPreview:o,executeWithLoading:r}=a,m=y=>{var S;return(((S=e.activeSchema.value)==null?void 0:S.views)||[]).find(b=>b.oid===y)},c=y=>{var S,b;const w=(S=e.activeSchema.value)==null?void 0:S.viewDetails;return(b=w==null?void 0:w[y])!=null&&b.columns?w[y].columns.map(C=>C.name):[]};return{getViewInfo:m,getViewColumns:c,onGenViewSelectSQL:()=>{if(!t.selectedItem.value)return;const y=m(t.selectedItem.value.id),w=(y==null?void 0:y.name)||t.selectedItem.value.title,S=c(w),b=n(),C=Vr(b,w,S);o(C,"SELECT Statement")},onGenViewDDL:async()=>{if(!t.selectedItem.value)return;const y=m(t.selectedItem.value.id),w=(y==null?void 0:y.name)||t.selectedItem.value.title,S=(y==null?void 0:y.type)===Fe.MaterializedView?"MATERIALIZED VIEW":"VIEW";o("",`${S} DDL`),await r(async()=>{const b=await $fetch("/api/views/definition",{method:"POST",body:{...Ce(e.connection.value),viewId:t.selectedItem.value.id,schemaName:n(),viewName:w}});if(b&&b.definition)o(b.definition,`${S} DDL`);else throw new Error("Could not retrieve view definition")},t.isFetching,"Failed to get view DDL")},onRenameView:()=>{if(!t.selectedItem.value||t.selectedItem.value.tabViewType!==X.ViewDetail)return;const y=m(t.selectedItem.value.id),w=(y==null?void 0:y.name)||t.selectedItem.value.title;t.renameDialogType.value=X.ViewDetail,t.renameDialogValue.value=w,t.renameDialogOpen.value=!0,t.renameDialogParameters.value=""},performRenameView:async y=>{var x;const S=(((x=e.activeSchema.value)==null?void 0:x.views)||[]).find(R=>R.name===t.renameDialogValue.value),b=(S==null?void 0:S.type)===Fe.MaterializedView,C=Mr(n(),t.renameDialogValue.value,y,b);await s(C,"save",async()=>{await r(async()=>{await $fetch("/api/query/execute",{method:"POST",body:{...Ce(e.connection.value),query:C}}),be.success("View renamed successfully"),await e.onRefreshSchema()},t.isFetching,"Failed to rename view")})},onDeleteView:async()=>{if(!t.selectedItem.value||t.selectedItem.value.tabViewType!==X.ViewDetail)return;const y=m(t.selectedItem.value.id),w=(y==null?void 0:y.name)||t.selectedItem.value.title,S=(y==null?void 0:y.type)===Fe.MaterializedView,b=Fr(n(),w,S,!1);await s(b,"delete",async()=>{await r(async()=>{await $fetch("/api/query/execute",{method:"POST",body:{...Ce(e.connection.value),query:b}}),be.success("View deleted successfully"),await e.onRefreshSchema()},t.isFetching,"Failed to delete view")})},onRefreshMaterializedView:async()=>{if(!t.selectedItem.value||t.selectedItem.value.tabViewType!==X.ViewDetail)return;const y=m(t.selectedItem.value.id);if((y==null?void 0:y.type)!==Fe.MaterializedView){be.error("Only materialized views can be refreshed");return}const w=(y==null?void 0:y.name)||t.selectedItem.value.title,S=Ur(n(),w,!1);await s(S,"save",async()=>{await r(async()=>{await $fetch("/api/query/execute",{method:"POST",body:{...Ce(e.connection.value),query:S}}),be.success("Materialized view refreshed successfully")},t.isFetching,"Failed to refresh materialized view")})}}}const Qr=e=>B(()=>[{title:"Rename...",icon:"hugeicons:pencil-edit-02",type:G.ACTION,select:e.onRenameFunction},{title:"Delete",icon:"hugeicons:delete-02",type:G.ACTION,select:e.onDeleteFunction},{type:G.SEPARATOR},{title:"Generate SQL",icon:"hugeicons:code",type:G.SUBMENU,items:[{title:"CALL",icon:"hugeicons:play",type:G.ACTION,select:e.onGenFunctionCallSQL},{title:"SELECT",icon:"hugeicons:table",type:G.ACTION,select:e.onGenFunctionSelectSQL},{type:G.SEPARATOR},{title:"DDL",icon:"hugeicons:document-code",type:G.ACTION,select:e.onGenFunctionDDL}]}]),Yr=(e,t)=>B(()=>[{title:"Export Data",icon:"hugeicons:download-01",type:G.SUBMENU,items:[{title:"SQL (INSERT statements)",icon:"hugeicons:code",type:G.ACTION,select:()=>e.onExportTableData(Tt.SQL)},{title:"JSON",icon:"hugeicons:file-script",type:G.ACTION,select:()=>e.onExportTableData(Tt.JSON)},{title:"CSV",icon:"hugeicons:file-script",type:G.ACTION,select:()=>e.onExportTableData(Tt.CSV)}]},{title:"Import Data",icon:"hugeicons:upload-01",type:G.ACTION,disabled:!0},{type:G.SEPARATOR},{title:"Generate SQL",icon:"hugeicons:code",type:G.SUBMENU,items:[{title:"SELECT",icon:"hugeicons:table",type:G.ACTION,select:e.onGenSelectSQL},{title:"INSERT",icon:"hugeicons:plus-sign",type:G.ACTION,select:e.onGenInsertSQL},{title:"UPDATE",icon:"hugeicons:pencil-edit-02",type:G.ACTION,select:e.onGenUpdateSQL},{title:"DELETE",icon:"hugeicons:delete-01",type:G.ACTION,select:e.onGenDeleteSQL},{type:G.SEPARATOR},{title:"MERGE",icon:"hugeicons:git-merge",type:G.ACTION,select:e.onGenMergeSQL},{title:"INSERT ON CONFLICT",icon:"hugeicons:git-pull-request",type:G.ACTION,select:e.onGenInsertOnConflictSQL},{title:"UPDATE FROM",icon:"hugeicons:arrow-right-01",type:G.ACTION,select:e.onGenUpdateFromSQL},{title:"DELETE USING",icon:"hugeicons:delete-02",type:G.ACTION,select:e.onGenDeleteUsingSQL},{type:G.SEPARATOR},{title:"DDL",icon:"hugeicons:document-code",type:G.ACTION,select:e.onGenTableDDL}]},{type:G.SEPARATOR},{title:"Rename...",icon:"hugeicons:pencil-edit-02",type:G.ACTION,select:e.onRenameTable},{title:"Delete",icon:"hugeicons:delete-02",type:G.ACTION,select:e.onDeleteTable},{type:G.SEPARATOR},t]),Xr=(e,t,a)=>B(()=>{const n=t.selectedItem.value?e.getViewInfo(t.selectedItem.value.id):null,s=(n==null?void 0:n.type)===Fe.MaterializedView,o=[{title:"Generate SQL",icon:"hugeicons:code",type:G.SUBMENU,items:[{title:"SELECT",icon:"hugeicons:table",type:G.ACTION,select:e.onGenViewSelectSQL},{type:G.SEPARATOR},{title:"DDL",icon:"hugeicons:document-code",type:G.ACTION,select:e.onGenViewDDL}]},{type:G.SEPARATOR}];return s&&(o.push({title:"Refresh Materialized View",icon:"hugeicons:refresh",type:G.ACTION,select:e.onRefreshMaterializedView}),o.push({type:G.SEPARATOR})),o.push({title:"Rename...",icon:"hugeicons:pencil-edit-02",type:G.ACTION,select:e.onRenameView},{title:"Delete",icon:"hugeicons:delete-02",type:G.ACTION,select:e.onDeleteView},{type:G.SEPARATOR},a),o});function Jr(e,t){const a=ct(),n=sa(a,"quickQuerySafeModeEnabled"),s=q(!1),o=()=>{var S;return((S=e.activeSchema.value)==null?void 0:S.name)||"public"},r=S=>{const b=e.activeSchema.value;return b!=null&&b.tableDetails&&b.tableDetails[S]||null},m=S=>{const b=r(S);return b!=null&&b.columns?b.columns.sort((C,x)=>C.ordinal_position-x.ordinal_position):[]};return{getSchemaName:o,getTableMetadata:r,getTableColumnsMetadata:m,getTableColumns:S=>m(S).map(b=>b.name),getPrimaryKeyColumns:S=>{const b=r(S);return b!=null&&b.primary_keys?b.primary_keys.map(C=>C.column):[]},getColumnPlaceholder:S=>S.default_value?S.default_value:S.is_nullable?"NULL":`:${S.name}`,onRightClickItem:(S,b)=>{t.selectedItem.value=Ga(b.value)},showSqlPreview:(S,b)=>{t.sqlPreviewDialogSQL.value=S,t.sqlPreviewDialogTitle.value=b,t.sqlPreviewDialogOpen.value=!0},executeWithSafeMode:async(S,b,C)=>{n.value?(t.safeModeDialogSQL.value=S,t.safeModeDialogType.value=b,t.pendingAction.value=C,t.safeModeDialogOpen.value=!0):await C()},onSafeModeConfirm:async()=>{t.pendingAction.value&&(s.value=!0,await t.pendingAction.value(),s.value=!1,t.pendingAction.value=null),t.safeModeDialogOpen.value=!1},onSafeModeCancel:()=>{t.pendingAction.value=null,t.safeModeDialogOpen.value=!1},executeWithLoading:async(S,b=t.isFetching,C="An error occurred")=>{try{b.value=!0,await S()}catch(x){console.error(x);const R=x;be.error(R.message||C),t.sqlPreviewDialogOpen.value=!1}finally{b.value=!1}},safeModeLoading:s}}function Zr(){const e=q(null),t=q(!1),a=q(""),n=q("delete"),s=q(null),o=q(null),r=q(!1),m=q(""),c=q(""),f=q(!1),u=q(""),p=q("Generated SQL"),h=q(!1);return{selectedItem:e,safeModeDialogOpen:t,safeModeDialogSQL:a,safeModeDialogType:n,pendingAction:s,renameDialogType:o,renameDialogOpen:r,renameDialogValue:m,renameDialogParameters:c,sqlPreviewDialogOpen:f,sqlPreviewDialogSQL:u,sqlPreviewDialogTitle:p,isFetching:h}}function el(e){const t=Wa(),a={...e,connection:sa(t,"selectedConnection")},n=Zr(),s=Jr(a,n),o=Hr(a,n,s),r=Wr(a,n,s),m=Kr(a,n,s),c=async()=>{const y=be.loading("Refreshing schema...");try{await e.onRefreshSchema(),be.success("Schema refreshed",{id:y})}catch(w){const S=w;be.error(S.message||"Failed to refresh schema",{id:y})}},f={title:"Refresh Schema",icon:"hugeicons:refresh",type:G.ACTION,select:c},u=Qr(o),p=Yr(r,f),h=Xr(m,n,f),d=async y=>{n.renameDialogOpen.value=!1,n.renameDialogType.value===X.FunctionsDetail?await o.performRenameFunction(y):n.renameDialogType.value===X.TableDetail?await r.performRenameTable(y):n.renameDialogType.value===X.ViewDetail&&await m.performRenameView(y)},v=B(()=>{if(!n.selectedItem.value)return[f];switch(n.selectedItem.value.tabViewType){case X.FunctionsDetail:return u.value;case X.TableDetail:return p.value;case X.ViewDetail:return h.value;default:return[f]}});return{selectedItem:n.selectedItem,contextMenuItems:v,safeModeLoading:s.safeModeLoading,safeModeDialogOpen:n.safeModeDialogOpen,safeModeDialogSQL:n.safeModeDialogSQL,safeModeDialogType:n.safeModeDialogType,onSafeModeConfirm:s.onSafeModeConfirm,onSafeModeCancel:s.onSafeModeCancel,renameDialogType:n.renameDialogType,renameDialogOpen:n.renameDialogOpen,renameDialogValue:n.renameDialogValue,onConfirmRename:d,sqlPreviewDialogOpen:n.sqlPreviewDialogOpen,sqlPreviewDialogSQL:n.sqlPreviewDialogSQL,sqlPreviewDialogTitle:n.sqlPreviewDialogTitle,isFetching:n.isFetching,onRightClickItem:s.onRightClickItem}}const tl={class:"flex flex-col h-full w-full overflow-y-auto relative"},nl={class:"h-full"},al=se({__name:"ManagementSchemas",setup(e){const{schemaStore:t,connectToConnection:a,wsStateStore:n}=Le(),s=un(),{openSchemaItemTab:o}=dt(),{activeSchema:r}=pe(t),{connectionId:m,schemaId:c,workspaceId:f}=pe(n),u=q(!1),p=je("fileTreeRef"),h=q(!1),d=ke(""),v=ut(d,Ze),{fileTreeData:y,defaultFolderOpenId:w}=zr(r,v),S=B(()=>Object.keys(y.value).length>0),b=async()=>{if(!m.value)throw new Error("No connection selected");u.value=!0,await a({wsId:f.value,connId:m.value,isRefresh:!0}),u.value=!1},C=()=>{p.value&&(h.value?(p.value.expandAll(),h.value=!1):(p.value.collapseAll(),h.value=!0))},x=B(()=>{var V;return((V=r.value)==null?void 0:V.name)||"public"}),{selectedItem:R,contextMenuItems:P,safeModeDialogOpen:Y,safeModeDialogSQL:K,safeModeDialogType:$,onSafeModeConfirm:T,onSafeModeCancel:I,renameDialogType:k,renameDialogOpen:L,renameDialogValue:O,onConfirmRename:J,sqlPreviewDialogOpen:Q,sqlPreviewDialogSQL:ae,sqlPreviewDialogTitle:ce,onRightClickItem:fe,isFetching:ie,safeModeLoading:ye}=el({schemaName:x,activeSchema:r,onRefreshSchema:b}),H=async V=>{var oe,ge;const j=y.value[V];if(!j)return;const Z=(oe=j.data)==null?void 0:oe.tabViewType,de=(ge=j.data)==null?void 0:ge.itemValue;!c.value||!Z||await o({id:V,name:j.name,type:Z,icon:(de==null?void 0:de.icon)||j.iconOpen||j.iconClose,iconClass:(de==null?void 0:de.iconClass)||j.iconClass,itemValueId:de==null?void 0:de.id,treeNodeId:j.id})},E=(V,j)=>{var oe,ge;const Z=y.value[V];if(!Z)return;const de=((oe=Z.data)==null?void 0:oe.itemValue)||{title:Z.name,name:Z.name,id:Z.id,tabViewType:(ge=Z.data)==null?void 0:ge.tabViewType,icon:Z.iconOpen||Z.iconClose,iconClass:Z.iconClass};fe(j,{value:de})};return Se(()=>s.activeTab,V=>{var j,Z,de,oe;if(!V){(j=p.value)==null||j.clearSelection();return}if(!((Z=p.value)!=null&&Z.isMouseInside)&&((V==null?void 0:V.type)===X.TableDetail||(V==null?void 0:V.type)===X.TableOverview||(V==null?void 0:V.type)===X.ViewDetail||(V==null?void 0:V.type)===X.ViewOverview||(V==null?void 0:V.type)===X.FunctionsDetail||(V==null?void 0:V.type)===X.FunctionsOverview)){const ge=(de=V.metadata)==null?void 0:de.treeNodeId;typeof ge=="string"&&((oe=p.value)==null||oe.focusItem(ge))}},{flush:"post",immediate:!0}),(V,j)=>{const Z=me,de=Re,oe=Ie,ge=Ae,ve=De,Me=Ke;return D(),U("div",tl,[i(l(et),{search:l(d),"onUpdate:search":j[0]||(j[0]=xe=>Ee(d)?d.value=xe:null),title:"Schemas","show-connection":!0,"show-schema":!0,"workspace-id":l(f),"show-search":!0,"search-placeholder":"Search in all tables or functions"},{actions:g(()=>[i(ve,null,{default:g(()=>[i(oe,{"as-child":""},{default:g(()=>[i(de,{size:"iconSm",variant:"ghost",onClick:C},{default:g(()=>[i(Z,{name:l(h)?"hugeicons:unfold-more":"hugeicons:unfold-less",class:"size-4! min-w-4"},null,8,["name"])]),_:1})]),_:1}),i(ge,null,{default:g(()=>[F(ne(l(h)?"Expand All":"Collapse All"),1)]),_:1})]),_:1}),i(ve,null,{default:g(()=>[i(oe,{"as-child":""},{default:g(()=>[i(de,{size:"iconSm",variant:"ghost",onClick:b},{default:g(()=>[i(Z,{name:"hugeicons:redo",class:he(["size-4! min-w-4",l(u)&&"animate-spin"])},null,8,["class"])]),_:1})]),_:1}),i(ge,null,{default:g(()=>j[5]||(j[5]=[F(" Refresh Schema ")])),_:1})]),_:1})]),_:1},8,["search","workspace-id"]),l(S)?re("",!0):(D(),te(Me,{key:0,title:"No data found",desc:"There is no schemas data available for this connection."})),i(Dt,{"context-menu-items":l(P),onOnClearContextMenu:j[1]||(j[1]=xe=>R.value=null)},{default:g(()=>[_("div",nl,[i(ft,{ref_key:"fileTreeRef",ref:p,"init-expanded-ids":[l(w)],"initial-data":l(y),"storage-key":`${l(m)}-schemas-tree`,"allow-drag-and-drop":!1,"delay-focus":0,onClick:H,onContextmenu:E},null,8,["init-expanded-ids","initial-data","storage-key"])])]),_:1},8,["context-menu-items"]),i(So,{loading:l(ye),open:l(Y),sql:l(K),type:l($),"onUpdate:open":j[2]||(j[2]=xe=>Y.value=xe),onConfirm:l(T),onCancel:l(I)},null,8,["loading","open","sql","type","onConfirm","onCancel"]),i(Br,{open:l(L),"onUpdate:open":j[3]||(j[3]=xe=>Ee(L)?L.value=xe:null),tabViewType:l(k),"current-name":l(O),onConfirm:l(J)},null,8,["open","tabViewType","current-name","onConfirm"]),i(qr,{open:l(Q),sql:l(ae),title:l(ce),isLoading:l(ie),"onUpdate:open":j[4]||(j[4]=xe=>Q.value=xe)},null,8,["open","sql","title","isLoading"])])}}}),ol={class:"flex flex-col h-full w-full overflow-hidden"},rl={key:0,class:"flex-1 flex flex-col items-center justify-center text-muted-foreground px-4"},ll={key:1,class:"flex-1 overflow-y-auto px-3 pb-4"},sl={class:"mb-4 p-3 bg-muted/30 rounded-lg"},il={class:"flex items-center gap-2"},cl={class:"text-sm font-medium"},ul={class:"space-y-2"},dl={class:"p-2 rounded-md bg-blue-500/10"},fl={class:"p-2 rounded-md bg-green-500/10"},pl={class:"mt-4 p-3 bg-muted/30 rounded-lg text-xs text-muted-foreground"},ml={class:"flex items-start gap-2"},vl=se({__name:"ManagementExport",setup(e){const{wsStateStore:t,connectionStore:a}=Le(),{openDatabaseToolsTab:n}=dt(),{connectionId:s,workspaceId:o}=pe(t),r=B(()=>s.value?a.connections.find(u=>u.id===s.value):null),m=B(()=>{var u;return((u=r.value)==null?void 0:u.connectionString)||""}),c=B(()=>{var u,p;return((u=r.value)==null?void 0:u.database)||((p=r.value)==null?void 0:p.name)||"database"}),f=async u=>{await n({type:u,databaseName:c.value})};return(u,p)=>{const h=me;return D(),U("div",ol,[i(l(et),{title:"Database Tools","show-connection":!0,"workspace-id":l(o)},null,8,["workspace-id"]),l(m)?(D(),U("div",ll,[_("div",sl,[_("div",il,[i(h,{name:"lucide:database",class:"size-5 text-primary"}),_("div",null,[_("p",cl,ne(l(c)),1),p[3]||(p[3]=_("p",{class:"text-xs text-muted-foreground"},"Connected database",-1))])])]),_("div",ul,[_("button",{class:"w-full flex items-center gap-3 p-3 rounded-lg border hover:bg-accent/50 transition-colors text-left",onClick:p[0]||(p[0]=d=>f("export"))},[_("div",dl,[i(h,{name:"lucide:download",class:"size-5 text-blue-500"})]),p[4]||(p[4]=_("div",{class:"flex-1"},[_("p",{class:"text-sm font-medium"},"Export Database"),_("p",{class:"text-xs text-muted-foreground"}," Backup schema and data using pg_dump ")],-1)),i(h,{name:"lucide:external-link",class:"size-4 text-muted-foreground"})]),_("button",{class:"w-full flex items-center gap-3 p-3 rounded-lg border hover:bg-accent/50 transition-colors text-left",onClick:p[1]||(p[1]=d=>f("import"))},[_("div",fl,[i(h,{name:"lucide:upload",class:"size-5 text-green-500"})]),p[5]||(p[5]=_("div",{class:"flex-1"},[_("p",{class:"text-sm font-medium"},"Import Database"),_("p",{class:"text-xs text-muted-foreground"}," Restore from backup using pg_restore ")],-1)),i(h,{name:"lucide:external-link",class:"size-4 text-muted-foreground"})])]),_("div",pl,[_("div",ml,[i(h,{name:"lucide:info",class:"size-4 mt-0.5 shrink-0"}),p[6]||(p[6]=_("div",null,[_("p",{class:"font-medium"},"Requirements"),_("p",{class:"mt-1"},[_("code",{class:"bg-muted px-1 rounded"},"pg_dump"),F(" and "),_("code",{class:"bg-muted px-1 rounded"},"pg_restore"),F(" must be installed on the server. ")])],-1))])])])):(D(),U("div",rl,[i(h,{name:"hugeicons:plug-socket",class:"size-12 mb-2 opacity-50"}),p[2]||(p[2]=_("p",{class:"text-sm text-center"},"Select a connection",-1))]))])}}}),gl={class:"flex items-center justify-between"},yl={class:"text-sm"},hl={class:"flex items-center gap-1"},bl={class:"h-full mt-4"},wl={key:0,class:"space-y-2"},Sl={class:"space-y-2"},xl={class:"grid grid-cols-2 gap-4"},Tl={class:"space-y-2"},Cl={class:"relative"},El={class:"space-y-2"},_l={class:"grid grid-cols-2 gap-3 pt-2"},Dl={class:"flex items-center space-x-2"},Il={class:"flex items-center space-x-2"},Al={class:"flex items-center space-x-2"},Rl={class:"flex items-center space-x-2"},$l={key:0,class:"text-sm text-destructive space-y-1"},Ol={key:1,class:"space-y-2"},Nl={class:"space-y-2"},kl={key:0,class:"p-3 rounded-md bg-amber-500/10 border border-amber-500/30 text-amber-600 dark:text-amber-400 text-sm"},Ll={class:"flex items-center gap-2"},Pl={class:"font-medium"},Fl={key:1,class:"space-y-2 pt-2"},Ml={class:"flex items-center space-x-2"},Ul={key:2,class:"flex items-center justify-center gap-2 py-8 text-muted-foreground"},Vl={key:2,class:"space-y-2"},zl={class:"flex items-center justify-between"},jl={key:0,class:"flex items-center justify-center gap-2 py-8 text-muted-foreground"},Bl={key:1,class:"space-y-2 max-h-[50vh] overflow-y-auto"},ql={class:"flex items-center gap-2"},Hl={class:"text-sm font-medium"},Gl={class:"flex items-center gap-4"},Wl={class:"flex items-center space-x-2"},Kl={class:"flex items-center space-x-2"},Ql={key:2,class:"flex flex-col items-center justify-center py-8 text-muted-foreground"},Yl={key:3,class:"p-3 rounded-md bg-amber-500/10 border border-amber-500/30 text-amber-600 dark:text-amber-400 text-sm"},Xl={class:"flex items-center gap-2"},Jl={key:3,class:"space-y-2"},Zl={class:"space-y-2"},es={class:"grid grid-cols-4 gap-2"},ts={class:"flex items-center space-x-2 pt-2"},ns={class:"space-y-2"},as={class:"flex items-center space-x-2"},os={class:"flex items-center space-x-2 pt-2"},rs={class:"space-y-2"},ls={class:"grid grid-cols-3 gap-2"},ss={class:"flex items-center space-x-2 pt-2"},is={class:"text-xs text-muted-foreground"},cs={key:4,class:"space-y-2"},us={class:"space-y-2"},ds={class:"grid grid-cols-2 gap-1 text-sm"},fs={class:"font-normal"},ps={class:"font-normal"},ms={class:"font-normal"},vs={class:"font-normal"},gs={key:0},ys={key:1},hs={key:0,class:"p-3 rounded-md bg-destructive/10 border border-destructive/30 text-destructive text-sm"},bs={class:"flex items-start gap-2"},ws={class:"flex-1"},Ss={class:"text-xs mt-1 opacity-90"},xs={class:"space-y-2"},Ts={class:"flex items-center justify-between"},Cs={class:"max-h-[140px] w-full overflow-y-auto rounded-md border bg-muted/50"},Es={class:"flex gap-2 items-center"},Qe=5,_s=se({__name:"CreateUserModal",props:{open:{type:Boolean},loading:{type:Boolean},databasesLoading:{type:Boolean},schemasLoading:{type:Boolean},databases:{},schemas:{},schemaObjects:{},currentDatabase:{},error:{}},emits:["update:open","confirm","cancel","clearError","fetchSchemas","fetchSchemaObjects"],setup(e,{emit:t}){const a=e,n=t,s=q(1),o=gt({roleName:"",password:"",canLogin:!0,canCreateDb:!1,canCreateRole:!1,isReplication:!1,connectionLimit:-1,validUntil:"",comment:""}),r=q(""),m=q(!1),c=B(()=>{var H;return((H=a.currentDatabase)==null?void 0:H.trim())||""}),f=B(()=>!r.value||!c.value?!1:r.value!==c.value),u=q(new Map),p=q("tables"),h=gt({scope:"all",privileges:new Set,applyToFuture:!1}),d=gt({scope:"all",privileges:new Set,applyToFuture:!1}),v=gt({scope:"all",privileges:new Set,applyToFuture:!1}),y=q(!1),w=B(()=>{const H=[];return o.roleName.trim()||H.push("Username is required"),o.roleName.includes(" ")&&H.push("Username cannot contain spaces"),H}),S=B(()=>w.value.length===0),b=B(()=>{for(const[,H]of u.value)if(H.has("USAGE"))return!0;return!1}),C=B(()=>{const H=[];for(const[E,V]of u.value)V.has("USAGE")&&H.push(E);return H}),x=B(()=>{const H=[];o.canLogin?(H.push("LOGIN"),o.password&&H.push(`PASSWORD '${o.password.replace(/'/g,"''")}'`)):H.push("NOLOGIN"),o.canCreateDb&&H.push("CREATEDB"),o.canCreateRole&&H.push("CREATEROLE"),o.isReplication&&H.push("REPLICATION"),o.connectionLimit>=0&&H.push(`CONNECTION LIMIT ${o.connectionLimit}`),o.validUntil&&H.push(`VALID UNTIL '${o.validUntil}'`);let E=`CREATE ROLE "${o.roleName}" WITH ${H.join(" ")};
|
|
55
|
+
`;r.value&&m.value&&(E+=`GRANT CONNECT ON DATABASE "${r.value}" TO "${o.roleName}";
|
|
56
|
+
`);for(const[V,j]of u.value)j.size>0&&(E+=`GRANT ${Array.from(j).join(", ")} ON SCHEMA "${V}" TO "${o.roleName}";
|
|
57
|
+
`);for(const V of C.value)if(h.privileges.size>0){const j=Array.from(h.privileges).join(", ");E+=`GRANT ${j} ON ALL TABLES IN SCHEMA "${V}" TO "${o.roleName}";
|
|
58
|
+
`,h.applyToFuture&&(E+=`ALTER DEFAULT PRIVILEGES IN SCHEMA "${V}" GRANT ${j} ON TABLES TO "${o.roleName}";
|
|
59
|
+
`)}for(const V of C.value)if(d.privileges.size>0){const j=Array.from(d.privileges).join(", ");E+=`GRANT ${j} ON ALL FUNCTIONS IN SCHEMA "${V}" TO "${o.roleName}";
|
|
60
|
+
`,d.applyToFuture&&(E+=`ALTER DEFAULT PRIVILEGES IN SCHEMA "${V}" GRANT ${j} ON FUNCTIONS TO "${o.roleName}";
|
|
61
|
+
`)}for(const V of C.value)if(v.privileges.size>0){const j=Array.from(v.privileges).join(", ");E+=`GRANT ${j} ON ALL SEQUENCES IN SCHEMA "${V}" TO "${o.roleName}";
|
|
62
|
+
`,v.applyToFuture&&(E+=`ALTER DEFAULT PRIVILEGES IN SCHEMA "${V}" GRANT ${j} ON SEQUENCES TO "${o.roleName}";
|
|
63
|
+
`)}return E}),{copied:R,handleCopy:P,getCopyIcon:Y,getCopyIconClass:K,getCopyTooltip:$}=ua(),T=()=>P(x.value),I=()=>{if(s.value<Qe){if(s.value===2&&r.value){if(f.value){s.value=Qe;return}n("fetchSchemas")}s.value++}},k=()=>{if(s.value===Qe&&f.value){s.value=2;return}s.value>1&&s.value--},L=B(()=>s.value===1?S.value:s.value===2?!!r.value&&!a.databasesLoading:s.value===3?b.value:!0);Se(r,()=>{u.value.clear(),h.privileges.clear(),h.applyToFuture=!1,d.privileges.clear(),d.applyToFuture=!1,v.privileges.clear(),v.applyToFuture=!1});const O=(H,E)=>{const V=u.value.get(H)??new Set,j=new Set(V);j.has(E)?j.delete(E):j.add(E),u.value.set(H,j)},J=(H,E)=>{var V;return((V=u.value.get(H))==null?void 0:V.has(E))??!1},Q=H=>{h.privileges.has(H)?h.privileges.delete(H):h.privileges.add(H)},ae=H=>{d.privileges.has(H)?d.privileges.delete(H):d.privileges.add(H)},ce=H=>{v.privileges.has(H)?v.privileges.delete(H):v.privileges.add(H)},fe=()=>{const H=[];for(const[V,j]of u.value)j.size>0&&H.push({schemaName:V,privileges:Array.from(j)});const E=[];for(const V of C.value)h.privileges.size>0&&E.push({objectType:"table",schemaName:V,privileges:Array.from(h.privileges),applyToFuture:h.applyToFuture}),d.privileges.size>0&&E.push({objectType:"function",schemaName:V,privileges:Array.from(d.privileges),applyToFuture:d.applyToFuture}),v.privileges.size>0&&E.push({objectType:"sequence",schemaName:V,privileges:Array.from(v.privileges),applyToFuture:v.applyToFuture});n("confirm",{roleData:{roleName:o.roleName,password:o.password||void 0,canLogin:o.canLogin,canCreateDb:o.canCreateDb,canCreateRole:o.canCreateRole,isReplication:o.isReplication,connectionLimit:o.connectionLimit>=0?o.connectionLimit:void 0,validUntil:o.validUntil||void 0,comment:o.comment||void 0},databaseGrants:r.value&&m.value?[{databaseName:r.value,privileges:["CONNECT"]}]:[],schemaGrants:H,objectGrants:E})},ie=()=>{s.value=1,o.roleName="",o.password="",o.canLogin=!0,o.canCreateDb=!1,o.canCreateRole=!1,o.isReplication=!1,o.connectionLimit=-1,o.validUntil="",o.comment="",r.value="",m.value=!1,u.value.clear(),h.privileges.clear(),h.applyToFuture=!1,d.privileges.clear(),d.applyToFuture=!1,v.privileges.clear(),v.applyToFuture=!1,y.value=!1};Se(()=>a.open,H=>{H||ie()}),Se(s,()=>{n("clearError")});const ye=["User Info","Database","Schemas","Objects","Review"];return(H,E)=>{const V=me,j=Ya,Z=Xa,de=Qa,oe=Ja,ge=sn,ve=xo,Me=Za,xe=an,Ue=ln,At=rn,Rt=nn,$t=Ke,nt=Eo,pt=Co,at=_o,A=To,N=Re,z=Ie,M=Ae,ee=De,ue=da,le=eo,Be=Ka,mt=to;return D(),te(mt,{open:H.open,"onUpdate:open":E[16]||(E[16]=vt=>n("update:open",vt))},{default:g(()=>[i(Be,{class:"w-[65vw] h-[60vh] max-w-[65vw]! gap-1 p-5 flex flex-col flex-1 overflow-hidden"},{default:g(()=>{var vt,En,_n;return[i(de,null,{default:g(()=>[i(j,{class:"flex items-center font-medium! gap-2"},{default:g(()=>[i(V,{name:"lucide:user-plus",class:"size-5 text-primary"}),E[17]||(E[17]=F(" Create New User/Role "))]),_:1}),i(Z,null,{default:g(()=>[_("div",gl,[_("span",yl,"Step "+ne(l(s))+": "+ne(ye[l(s)-1]),1),_("div",hl,[(D(),U(Te,null,$e(Qe,W=>_("div",{key:W,class:he(["w-6 h-1 rounded-full transition-colors",W<=l(s)?"bg-primary":"bg-muted"])},null,2)),64))])])]),_:1})]),_:1}),_("div",bl,[l(s)===1?(D(),U("div",wl,[_("div",Sl,[i(oe,{for:"roleName"},{default:g(()=>E[18]||(E[18]=[F("Username "),_("span",{class:"text-destructive"},"*",-1)])),_:1}),i(ge,{id:"roleName",modelValue:l(o).roleName,"onUpdate:modelValue":E[0]||(E[0]=W=>l(o).roleName=W),placeholder:"Enter username",class:he({"border-destructive":l(o).roleName&&l(w).some(W=>W.includes("Username"))})},null,8,["modelValue","class"])]),_("div",xl,[_("div",Tl,[i(oe,{for:"password"},{default:g(()=>E[19]||(E[19]=[F("Password")])),_:1}),_("div",Cl,[i(ge,{id:"password",modelValue:l(o).password,"onUpdate:modelValue":E[1]||(E[1]=W=>l(o).password=W),type:l(y)?"text":"password",placeholder:"Enter password",class:"pr-10"},null,8,["modelValue","type"]),_("button",{type:"button",class:"absolute right-2 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground",onClick:E[2]||(E[2]=W=>y.value=!l(y))},[i(V,{name:l(y)?"lucide:eye-off":"lucide:eye",class:"size-4"},null,8,["name"])])]),E[20]||(E[20]=_("p",{class:"text-xs text-amber-500 dark:text-amber-400"}," Leave blank to create a role without a password. ",-1))]),_("div",El,[i(oe,{for:"connectionLimit"},{default:g(()=>E[21]||(E[21]=[F("Connection Limit")])),_:1}),i(ge,{id:"connectionLimit",modelValue:l(o).connectionLimit,"onUpdate:modelValue":E[3]||(E[3]=W=>l(o).connectionLimit=W),modelModifiers:{number:!0},type:"number",min:-1,placeholder:"No limit"},null,8,["modelValue"]),E[22]||(E[22]=_("p",{class:"text-xs text-muted-foreground"}," Use `-1` for no limit. ",-1))])]),_("div",_l,[_("div",Dl,[i(ve,{id:"canLogin","model-value":l(o).canLogin,"onUpdate:modelValue":E[4]||(E[4]=W=>l(o).canLogin=W)},null,8,["model-value"]),i(oe,{for:"canLogin",class:"text-sm font-normal cursor-pointer"},{default:g(()=>E[23]||(E[23]=[F("Can Login")])),_:1})]),_("div",Il,[i(ve,{id:"canCreateDb","model-value":l(o).canCreateDb,"onUpdate:modelValue":E[5]||(E[5]=W=>l(o).canCreateDb=W)},null,8,["model-value"]),i(oe,{for:"canCreateDb",class:"text-sm font-normal cursor-pointer"},{default:g(()=>E[24]||(E[24]=[F("Create DB")])),_:1})]),_("div",Al,[i(ve,{id:"canCreateRole","model-value":l(o).canCreateRole,"onUpdate:modelValue":E[6]||(E[6]=W=>l(o).canCreateRole=W)},null,8,["model-value"]),i(oe,{for:"canCreateRole",class:"text-sm font-normal cursor-pointer"},{default:g(()=>E[25]||(E[25]=[F("Create Role")])),_:1})]),_("div",Rl,[i(ve,{id:"isReplication","model-value":l(o).isReplication,"onUpdate:modelValue":E[7]||(E[7]=W=>l(o).isReplication=W)},null,8,["model-value"]),i(oe,{for:"isReplication",class:"text-sm font-normal cursor-pointer"},{default:g(()=>E[26]||(E[26]=[F("Replication")])),_:1})])]),l(w).length>0&&l(o).roleName?(D(),U("div",$l,[(D(!0),U(Te,null,$e(l(w),W=>(D(),U("div",{key:W,class:"flex items-center gap-1"},[i(V,{name:"lucide:x",class:"size-3"}),F(" "+ne(W),1)]))),128))])):re("",!0)])):l(s)===2?(D(),U("div",Ol,[_("div",Nl,[i(oe,null,{default:g(()=>E[27]||(E[27]=[F("Select Database")])),_:1}),i(Rt,{modelValue:l(r),"onUpdate:modelValue":E[8]||(E[8]=W=>Ee(r)?r.value=W:null),disabled:H.databasesLoading},{default:g(()=>[i(xe,null,{default:g(()=>[i(Me,{placeholder:H.databasesLoading?"Loading databases...":"Choose a database"},null,8,["placeholder"])]),_:1}),i(At,null,{default:g(()=>[(D(!0),U(Te,null,$e(H.databases,W=>(D(),te(Ue,{key:W.databaseName,value:W.databaseName},{default:g(()=>[F(ne(W.databaseName),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1},8,["modelValue","disabled"])]),l(f)?(D(),U("div",kl,[_("div",Ll,[i(V,{name:"lucide:info",class:"size-4"}),_("span",null,[E[28]||(E[28]=F(" You're connected to ")),_("span",Pl,ne(l(c)),1),E[29]||(E[29]=F(". Schema and object permissions can only be configured for the connected database, so you'll go directly to Review for database-level grants. "))])])])):re("",!0),l(r)&&!H.databasesLoading?(D(),U("div",Fl,[_("div",Ml,[i(ve,{id:"dbConnect","model-value":l(m),"onUpdate:modelValue":E[9]||(E[9]=W=>Ee(m)?m.value=W:null)},null,8,["model-value"]),i(oe,{for:"dbConnect",class:"text-sm font-normal cursor-pointer"},{default:g(()=>E[30]||(E[30]=[F(" Grant CONNECT permission ")])),_:1})]),E[31]||(E[31]=_("p",{class:"text-xs text-muted-foreground"}," CONNECT allows the user to connect to this database. ",-1))])):re("",!0),H.databasesLoading?(D(),U("div",Ul,[i(V,{name:"hugeicons:loading-03",class:"size-5 animate-spin text-muted-foreground"}),E[32]||(E[32]=_("p",{class:"text-sm"},"Loading databases...",-1))])):(vt=H.databases)!=null&&vt.length?re("",!0):(D(),te($t,{key:3,title:"No databases available",desc:"No databases were found for this connection."}))])):l(s)===3?(D(),U("div",Vl,[_("div",zl,[i(oe,null,{default:g(()=>E[33]||(E[33]=[F("Schema Permissions")])),_:1}),E[34]||(E[34]=_("span",{class:"text-xs text-muted-foreground"},"At least one USAGE required",-1))]),H.schemasLoading?(D(),U("div",jl,[i(V,{name:"hugeicons:loading-03",class:"size-5 animate-spin text-muted-foreground"}),E[35]||(E[35]=_("p",{class:"text-sm"},"Loading schemas...",-1))])):(En=H.schemas)!=null&&En.length?(D(),U("div",Bl,[(D(!0),U(Te,null,$e(H.schemas,W=>(D(),U("div",{key:W.schemaName,class:"flex items-center justify-between p-3 rounded-lg border bg-card hover:bg-accent/50 transition-colors"},[_("div",ql,[i(V,{name:"lucide:folder",class:"size-4 text-muted-foreground"}),_("span",Hl,ne(W.schemaName),1)]),_("div",Gl,[_("div",Wl,[i(ve,{id:`schema-${W.schemaName}-usage`,"model-value":J(W.schemaName,"USAGE"),"onUpdate:modelValue":Ot=>O(W.schemaName,"USAGE")},null,8,["id","model-value","onUpdate:modelValue"]),i(oe,{for:`schema-${W.schemaName}-usage`,class:"text-xs cursor-pointer"},{default:g(()=>E[36]||(E[36]=[F("USAGE")])),_:2},1032,["for"])]),_("div",Kl,[i(ve,{id:`schema-${W.schemaName}-create`,"model-value":J(W.schemaName,"CREATE"),"onUpdate:modelValue":Ot=>O(W.schemaName,"CREATE")},null,8,["id","model-value","onUpdate:modelValue"]),i(oe,{for:`schema-${W.schemaName}-create`,class:"text-xs cursor-pointer"},{default:g(()=>E[37]||(E[37]=[F("CREATE")])),_:2},1032,["for"])])])]))),128))])):(D(),U("div",Ql,[i(V,{name:"lucide:folder",class:"size-12 mb-2 opacity-50"}),E[38]||(E[38]=_("p",{class:"text-sm"},"No schemas found",-1))])),!l(b)&&((_n=H.schemas)!=null&&_n.length)?(D(),U("div",Yl,[_("div",Xl,[i(V,{name:"lucide:alert-triangle",class:"size-4"}),E[39]||(E[39]=_("span",null,"Select at least one schema with USAGE permission to continue",-1))])])):re("",!0)])):l(s)===4?(D(),U("div",Jl,[i(A,{modelValue:l(p),"onUpdate:modelValue":E[14]||(E[14]=W=>Ee(p)?p.value=W:null),class:"w-full"},{default:g(()=>[i(pt,{class:"w-full grid grid-cols-3"},{default:g(()=>[i(nt,{value:"tables"},{default:g(()=>[i(V,{name:"lucide:table",class:"size-4 mr-1"}),E[40]||(E[40]=F(" Tables "))]),_:1}),i(nt,{value:"functions"},{default:g(()=>[i(V,{name:"lucide:function-square",class:"size-4 mr-1"}),E[41]||(E[41]=F(" Functions "))]),_:1}),i(nt,{value:"sequences"},{default:g(()=>[i(V,{name:"lucide:list-ordered",class:"size-4 mr-1"}),E[42]||(E[42]=F(" Sequences "))]),_:1})]),_:1}),i(at,{value:"tables",class:"space-y-2 pt-4"},{default:g(()=>[_("div",Zl,[i(oe,{class:"text-sm"},{default:g(()=>E[43]||(E[43]=[F("Table Privileges")])),_:1}),_("div",es,[(D(),U(Te,null,$e(["SELECT","INSERT","UPDATE","DELETE"],W=>_("div",{key:W,class:"flex items-center space-x-2"},[i(ve,{id:`table-${W}`,"model-value":l(h).privileges.has(W),"onUpdate:modelValue":Ot=>Q(W)},null,8,["id","model-value","onUpdate:modelValue"]),i(oe,{for:`table-${W}`,class:"text-xs cursor-pointer"},{default:g(()=>[F(ne(W),1)]),_:2},1032,["for"])])),64))])]),_("div",ts,[i(ve,{id:"tablesFuture","model-value":l(h).applyToFuture,"onUpdate:modelValue":E[10]||(E[10]=W=>l(h).applyToFuture=W)},null,8,["model-value"]),i(oe,{for:"tablesFuture",class:"text-sm font-normal cursor-pointer"},{default:g(()=>E[44]||(E[44]=[F(" Apply to future tables (ALTER DEFAULT PRIVILEGES) ")])),_:1})])]),_:1}),i(at,{value:"functions",class:"space-y-2 pt-4"},{default:g(()=>[_("div",ns,[i(oe,{class:"text-sm"},{default:g(()=>E[45]||(E[45]=[F("Function Privileges")])),_:1}),_("div",as,[i(ve,{id:"func-execute","model-value":l(d).privileges.has("EXECUTE"),"onUpdate:modelValue":E[11]||(E[11]=W=>ae("EXECUTE"))},null,8,["model-value"]),i(oe,{for:"func-execute",class:"text-xs cursor-pointer"},{default:g(()=>E[46]||(E[46]=[F("EXECUTE")])),_:1})])]),_("div",os,[i(ve,{id:"funcFuture","model-value":l(d).applyToFuture,"onUpdate:modelValue":E[12]||(E[12]=W=>l(d).applyToFuture=W)},null,8,["model-value"]),i(oe,{for:"funcFuture",class:"text-sm font-normal cursor-pointer"},{default:g(()=>E[47]||(E[47]=[F(" Apply to future functions ")])),_:1})])]),_:1}),i(at,{value:"sequences",class:"space-y-2 pt-4"},{default:g(()=>[_("div",rs,[i(oe,{class:"text-sm"},{default:g(()=>E[48]||(E[48]=[F("Sequence Privileges")])),_:1}),_("div",ls,[(D(),U(Te,null,$e(["USAGE","SELECT"],W=>_("div",{key:W,class:"flex items-center space-x-2"},[i(ve,{id:`seq-${W}`,"model-value":l(v).privileges.has(W),"onUpdate:modelValue":Ot=>ce(W)},null,8,["id","model-value","onUpdate:modelValue"]),i(oe,{for:`seq-${W}`,class:"text-xs cursor-pointer"},{default:g(()=>[F(ne(W),1)]),_:2},1032,["for"])])),64))])]),_("div",ss,[i(ve,{id:"seqFuture","model-value":l(v).applyToFuture,"onUpdate:modelValue":E[13]||(E[13]=W=>l(v).applyToFuture=W)},null,8,["model-value"]),i(oe,{for:"seqFuture",class:"text-sm font-normal cursor-pointer"},{default:g(()=>E[49]||(E[49]=[F(" Apply to future sequences ")])),_:1})])]),_:1})]),_:1},8,["modelValue"]),_("p",is," Permissions will be applied to all objects in selected schemas: "+ne(l(C).join(", ")||"none"),1)])):l(s)===5?(D(),U("div",cs,[_("div",us,[E[54]||(E[54]=_("h4",{class:"text-sm font-medium"},"Summary",-1)),_("div",ds,[E[50]||(E[50]=_("div",{class:"text-muted-foreground"},"Username:",-1)),_("div",fs,ne(l(o).roleName),1),E[51]||(E[51]=_("div",{class:"text-muted-foreground"},"Type:",-1)),_("div",ps,ne(l(o).canLogin?"User (login)":"Role"),1),E[52]||(E[52]=_("div",{class:"text-muted-foreground"},"Database:",-1)),_("div",ms,ne(l(r)||"None"),1),E[53]||(E[53]=_("div",{class:"text-muted-foreground"},"Schemas:",-1)),_("div",vs,[l(f)?(D(),U("span",gs,"Skipped")):(D(),U("span",ys,ne(l(C).length)+" selected",1))])])]),H.error?(D(),U("div",hs,[_("div",bs,[i(V,{name:"lucide:alert-circle",class:"size-4 mt-0.5 shrink-0"}),_("div",ws,[E[55]||(E[55]=_("p",{class:"font-medium"},"Error creating user",-1)),_("p",Ss,ne(H.error),1)])])])):re("",!0),_("div",xs,[_("div",Ts,[E[56]||(E[56]=_("h4",{class:"text-sm font-medium"},"Generated SQL",-1)),i(ee,null,{default:g(()=>[i(z,{"as-child":""},{default:g(()=>[i(N,{variant:"ghost",size:"xs",onClick:T},{default:g(()=>[i(V,{name:l(Y)(l(R)),class:he(["size-3 mr-1",l(K)(l(R))])},null,8,["name","class"]),F(" "+ne(l($)(l(R),"Copy")),1)]),_:1})]),_:1}),i(M,null,{default:g(()=>[F(ne(l($)(l(R),"Copy SQL")),1)]),_:1})]),_:1})]),_("div",Cs,[i(ue,{code:l(x),"max-height":"140px"},null,8,["code"])])])])):re("",!0)]),i(le,{class:"gap-2 sm:gap-0"},{default:g(()=>[l(s)>1?(D(),te(N,{key:0,variant:"outline",onClick:k,disabled:H.loading},{default:g(()=>[i(V,{name:"lucide:arrow-left",class:"size-4"}),E[57]||(E[57]=F(" Back "))]),_:1},8,["disabled"])):re("",!0),E[60]||(E[60]=_("div",{class:"flex-1"},null,-1)),_("div",Es,[l(s)===1?(D(),te(N,{key:0,variant:"outline",onClick:E[15]||(E[15]=W=>n("cancel")),disabled:H.loading},{default:g(()=>E[58]||(E[58]=[F(" Cancel ")])),_:1},8,["disabled"])):re("",!0),l(s)<Qe?(D(),te(N,{key:1,onClick:I,disabled:!l(L)},{default:g(()=>[F(ne(l(s)===4?"Review":"Next")+" ",1),i(V,{name:"lucide:arrow-right",class:"size-4"})]),_:1},8,["disabled"])):re("",!0),l(s)===Qe?(D(),te(N,{key:2,onClick:fe,disabled:H.loading||!l(S)},{default:g(()=>[H.loading?(D(),te(V,{key:0,name:"hugeicons:loading-03",class:"size-4 mr-2 animate-spin"})):re("",!0),E[59]||(E[59]=F(" Create User "))]),_:1},8,["disabled"])):re("",!0)])]),_:1})]}),_:1})]),_:1},8,["open"])}}}),Ds={class:"text-sm"},Is={class:"font-semibold text-foreground"},As={key:0,class:"flex items-start gap-2 p-3 rounded-md bg-destructive/10 border border-destructive/20"},Rs={class:"space-y-2"},$s={class:"p-3 bg-muted/50 rounded-md border font-mono text-xs"},Os=se({__name:"DeleteUserDialog",props:{open:{type:Boolean},role:{},loading:{type:Boolean}},emits:["update:open","confirm","cancel"],setup(e,{emit:t}){const a=e,n=t,s=B(()=>a.role?`DROP ROLE IF EXISTS "${a.role.roleName}"`:"");return(o,r)=>{const m=me,c=mn,f=vn,u=pn,p=yn,h=Re,d=gn,v=fn,y=hn;return D(),te(y,{open:o.open,"onUpdate:open":r[2]||(r[2]=w=>n("update:open",w))},{default:g(()=>[i(v,{class:"max-w-md"},{default:g(()=>[i(u,null,{default:g(()=>[i(c,{class:"flex items-center gap-2"},{default:g(()=>[i(m,{name:"lucide:trash-2",class:"size-5 text-destructive"}),r[3]||(r[3]=F(" Delete User/Role "))]),_:1}),o.role?(D(),te(f,{key:0,class:"space-y-4"},{default:g(()=>[_("div",Ds,[r[4]||(r[4]=F(" Are you sure you want to delete the role ")),_("span",Is,ne(o.role.roleName),1),r[5]||(r[5]=F("? "))]),o.role.isSuperuser?(D(),U("div",As,[i(m,{name:"lucide:alert-triangle",class:"size-5 text-destructive shrink-0 mt-0.5"}),r[6]||(r[6]=_("div",{class:"text-sm text-destructive"},[_("span",{class:"font-semibold"},"Warning:"),F(" This is a superuser role. Deleting it may affect system functionality. ")],-1))])):re("",!0),_("div",Rs,[r[7]||(r[7]=_("p",{class:"text-xs font-medium text-muted-foreground"}," Generated SQL: ",-1)),_("div",$s,ne(l(s)),1)]),r[8]||(r[8]=_("div",{class:"text-xs text-muted-foreground"}," This action cannot be undone. Objects owned by this role must be reassigned or dropped first. ",-1))]),_:1})):re("",!0)]),_:1}),i(d,null,{default:g(()=>[i(p,{onClick:r[0]||(r[0]=w=>n("cancel")),disabled:o.loading},{default:g(()=>r[9]||(r[9]=[F(" Cancel ")])),_:1},8,["disabled"]),i(h,{variant:"destructive",disabled:o.loading,onClick:r[1]||(r[1]=w=>n("confirm"))},{default:g(()=>[o.loading?(D(),te(m,{key:0,name:"hugeicons:loading-03",class:"size-4 mr-2 animate-spin"})):re("",!0),r[10]||(r[10]=F(" Delete Role "))]),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1},8,["open"])}}}),Ns={class:"flex flex-col gap-1 py-1 h-full relative"},ks={class:"h-full"},Ls=se({__name:"UserRolesTree",props:{roles:{},loading:{type:Boolean},selectedRoleName:{},onCreateUser:{type:Function},canCreateUser:{type:Boolean},createUserDisabledReason:{},onDeleteUser:{type:Function},onRefresh:{type:Function}},setup(e,{expose:t}){const a=e,n=un(),s=no(),{openUserPermissionsTab:o}=dt(),{workspaceId:r,connectionId:m,schemaId:c}=pe(s),f=je("fileTreeRef"),u=q(null),p=q(!1),h=q(null),d=q(!1),v=[Oe.User],y=B(()=>{const $={},T=[],I=[],k=[];for(const O of a.roles)O.isSuperuser?T.push(O):O.canLogin?I.push(O):k.push(O);const L=(O,J,Q)=>{$[O.roleName]={id:O.roleName,parentId:J,name:O.roleName,type:"file",depth:Q,iconClose:O.canLogin?"hugeicons:user-circle":"hugeicons:user-lock-01",iconClass:O.isSuperuser?"text-yellow-500":O.canLogin?"text-blue-400":"text-purple-400",data:{tabViewType:X.UserPermissions,roleData:O}}};return T.length>0&&($[Oe.Superuser]={id:Oe.Superuser,parentId:null,name:`Superusers (${T.length})`,type:"folder",depth:0,iconOpen:"hugeicons:crown",iconClose:"hugeicons:crown",iconClass:"text-yellow-500",children:T.map(O=>O.roleName)},T.forEach(O=>L(O,Oe.Superuser,1))),I.length>0&&($[Oe.User]={id:Oe.User,parentId:null,name:`Users (${I.length})`,type:"folder",depth:0,iconOpen:"hugeicons:user",iconClose:"hugeicons:user",iconClass:"text-blue-500",children:I.map(O=>O.roleName)},I.forEach(O=>L(O,Oe.User,1))),k.length>0&&($[Oe.Role]={id:Oe.Role,parentId:null,name:`Roles (${k.length})`,type:"folder",depth:0,iconOpen:"hugeicons:user-group",iconClose:"hugeicons:user-group",iconClass:"text-purple-500",children:k.map(O=>O.roleName)},k.forEach(O=>L(O,Oe.Role,1))),$}),w=$=>a.roles.find(T=>T.roleName===$),S=($,T)=>{var k;const I=y.value[$];if(I)if(I.type==="folder")u.value={type:"category",category:I.id};else{const L=(k=I.data)==null?void 0:k.roleData;if(L)u.value={type:"role",role:L};else{const O=w(I.id);O&&(u.value={type:"role",role:O})}}},b=async $=>{var J;const T=y.value[$];if(!T||T.type==="folder"||!r.value||!m.value)return;const I=(J=T.data)==null?void 0:J.roleData,k=(I==null?void 0:I.roleName)||T.id,L=I!=null&&I.isSuperuser?"hugeicons:crown":I!=null&&I.canLogin?"hugeicons:user-circle":"hugeicons:user-lock-01",O=I!=null&&I.isSuperuser?"text-yellow-500":I!=null&&I.canLogin?"text-blue-400":"text-purple-400";await o({roleName:k,icon:L,iconClass:O,treeNodeId:T.id})},C=B(()=>{const $=[];if(!u.value)return $.push({title:"Create User",icon:"lucide:user-plus",type:G.ACTION,select:()=>{var T;return(T=a.onCreateUser)==null?void 0:T.call(a)},disabled:a.canCreateUser===!1}),$.push({type:G.SEPARATOR}),$.push({title:"Refresh",icon:"lucide:refresh-cw",type:G.ACTION,select:()=>{var T;return(T=a.onRefresh)==null?void 0:T.call(a)}}),$;if(u.value.type==="category"&&($.push({title:"Users & Roles",type:G.LABEL}),$.push({title:"Create User",icon:"lucide:user-plus",type:G.ACTION,select:()=>{var T;return(T=a.onCreateUser)==null?void 0:T.call(a)},disabled:a.canCreateUser===!1}),$.push({type:G.SEPARATOR}),$.push({title:"Refresh",icon:"lucide:refresh-cw",type:G.ACTION,select:()=>{var T;return(T=a.onRefresh)==null?void 0:T.call(a)}})),u.value.type==="role"&&u.value.role){const T=u.value.role;$.push({title:T.roleName,type:G.LABEL}),$.push({title:"View Permissions",icon:"hugeicons:shield-01",type:G.ACTION,select:()=>{b(T.roleName)}}),$.push({type:G.SEPARATOR}),$.push({title:"Delete User",icon:"lucide:trash-2",type:G.ACTION,select:()=>{h.value=T,p.value=!0},disabled:T.isSuperuser}),$.push({type:G.SEPARATOR}),$.push({title:"Refresh",icon:"lucide:refresh-cw",type:G.ACTION,select:()=>{var I;return(I=a.onRefresh)==null?void 0:I.call(a)}})}return $}),x=()=>{u.value=null},R=async()=>{var $;if(h.value){d.value=!0;try{await(($=a.onDeleteUser)==null?void 0:$.call(a,h.value)),p.value=!1,h.value=null}finally{d.value=!1}}};Se(()=>n.activeTab,$=>{var T,I,k,L;if(!$){(T=f.value)==null||T.clearSelection();return}if(!((I=f.value)!=null&&I.isMouseInside)&&($==null?void 0:$.type)===X.UserPermissions&&typeof((k=$.metadata)==null?void 0:k.treeNodeId)=="string"){(L=f.value)==null||L.focusItem($.metadata.treeNodeId);return}},{flush:"post",immediate:!0});const P=()=>{var $;($=f.value)==null||$.expandAll()},Y=()=>{var $;($=f.value)==null||$.collapseAll()},K=B(()=>{var $;return(($=f.value)==null?void 0:$.isExpandedAll)??!1});return t({expandAll:P,collapseAll:Y,isExpandedAll:K}),($,T)=>{const I=me,k=Re,L=Ke;return D(),U(Te,null,[_("div",Ns,[$.loading?(D(),te(la,{key:0,visible:""})):$.roles.length?(D(),te(Dt,{key:2,"context-menu-items":l(C),onOnClearContextMenu:x},{default:g(()=>[_("div",ks,[i(ft,{ref_key:"fileTreeRef",ref:f,"init-expanded-ids":v,"initial-data":l(y),"allow-drag-and-drop":!1,"delay-focus":0,"storage-key":`${l(m)}-user-roles-tree`,onClick:b,onContextmenu:S},null,8,["initial-data","storage-key"])])]),_:1},8,["context-menu-items"])):(D(),te(L,{key:1,title:"No roles found",desc:"There are no roles or users available for this connection."},{default:g(()=>[$.canCreateUser?(D(),te(k,{key:0,variant:"outline",size:"sm",onClick:$.onCreateUser},{default:g(()=>[i(I,{name:"hugeicons:user-add-01"}),T[2]||(T[2]=F(" Create User "))]),_:1},8,["onClick"])):re("",!0)]),_:1}))]),i(Os,{open:l(p),"onUpdate:open":T[0]||(T[0]=O=>Ee(p)?p.value=O:null),role:l(h),loading:l(d),onConfirm:R,onCancel:T[1]||(T[1]=O=>{p.value=!1,h.value=null})},null,8,["open","role","loading"])],64)}}}),Ps={class:"flex flex-col h-full w-full overflow-hidden"},Fs={key:1,class:"flex-1 overflow-y-auto min-h-0"},Ms=se({__name:"ManagementUsersAndPermission",setup(e){const{wsStateStore:t,connectionStore:a}=Le(),{connectionId:n,workspaceId:s}=pe(t),o=B(()=>{if(n.value)return a.connections.find(j=>j.id===n.value)}),r=B(()=>{var j;if(!o.value)return"";if(o.value.database)return o.value.database;if(o.value.connectionString)try{return((j=new URL(o.value.connectionString).pathname)==null?void 0:j.replace(/^\//,""))||""}catch{return""}return""}),m=B(()=>{if(!o.value)return"";if(o.value.username)return o.value.username;if(o.value.connectionString)try{return new URL(o.value.connectionString).username||""}catch{return""}return""}),{isLoading:c,roles:f,fetchRoles:u,refresh:p}=Do(o),h=B(()=>m.value&&f.value.find(j=>j.roleName===m.value)||null),d=B(()=>!o.value||!h.value?!1:h.value.isSuperuser||h.value.canCreateRole),v=B(()=>o.value?h.value?d.value?"Create User":"Your role lacks CREATEROLE or SUPERUSER privileges":"Unable to verify role privileges for this connection":"Select a connection to create users"),{isCreating:y,createRole:w,deleteRole:S}=Io(o),{isLoading:b,databases:C,fetchDatabases:x}=Ao(o),{isLoading:R,schemas:P,fetchSchemas:Y}=Ro(o),{isGranting:K,grantBulkPermissions:$}=$o(o),T=ke(""),I=ut(T,Ze),k=q(!1),L=q(!1),O=q(null),J=B(()=>{if(!I.value)return f.value;const j=I.value.toLowerCase();return f.value.filter(Z=>Z.roleName.toLowerCase().includes(j))});Se(()=>o.value,async j=>{j&&await u()},{immediate:!0});const Q=async()=>{k.value=!0,await p(),k.value=!1},ae=je("userRolesTreeRef"),ce=B(()=>ae.value?!ae.value.isExpandedAll:!0),fe=()=>{var j,Z;ce.value?(j=ae.value)==null||j.expandAll():(Z=ae.value)==null||Z.collapseAll()},ie=()=>{O.value=null},ye=()=>{d.value&&(L.value=!0,C.value=[],x())},H=async()=>{P.value=[],await Y()},E=async j=>{O.value=null;try{const Z=await w(j.roleData);if(!(Z!=null&&Z.success)){O.value=(Z==null?void 0:Z.message)||"Failed to create user. Please check the username and try again.";return}if(j.databaseGrants.length>0||j.schemaGrants.length>0||j.objectGrants.length>0){const oe=await $({roleName:j.roleData.roleName,databaseGrants:j.databaseGrants,schemaGrants:j.schemaGrants,objectGrants:j.objectGrants});if(oe&&!oe.success){O.value=`User created but some permissions failed: ${oe.totalFailed} of ${oe.results.length} grants failed.`;return}}L.value=!1,await p()}catch(Z){O.value=(Z==null?void 0:Z.message)||"Failed to create user"}},V=async j=>{const Z=await S(j.roleName);return Z!=null&&Z.success&&await p(),Z};return(j,Z)=>{const de=me,oe=Re,ge=Ie,ve=Ae,Me=De,xe=Ke;return D(),U("div",Ps,[i(l(et),{search:l(T),"onUpdate:search":Z[0]||(Z[0]=Ue=>Ee(T)?T.value=Ue:null),title:"Users & Roles","show-connection":!0,"workspace-id":l(s),"show-search":!0,"search-placeholder":"Search users/roles..."},{actions:g(()=>[i(Me,null,{default:g(()=>[i(ge,{"as-child":""},{default:g(()=>[_("span",null,[i(oe,{size:"iconSm",variant:"ghost",onClick:ye,disabled:!l(d)},{default:g(()=>[i(de,{name:"hugeicons:user-add-01",class:"size-4! min-w-4"})]),_:1},8,["disabled"])])]),_:1}),i(ve,null,{default:g(()=>[F(ne(l(v)),1)]),_:1})]),_:1}),i(Me,null,{default:g(()=>[i(ge,{"as-child":""},{default:g(()=>[i(oe,{size:"iconSm",variant:"ghost",onClick:fe},{default:g(()=>[i(de,{name:l(ce)?"hugeicons:unfold-more":"hugeicons:unfold-less",class:"size-4! min-w-4"},null,8,["name"])]),_:1})]),_:1}),i(ve,null,{default:g(()=>[F(ne(l(ce)?"Expand All":"Collapse All"),1)]),_:1})]),_:1}),i(Me,null,{default:g(()=>[i(ge,{"as-child":""},{default:g(()=>[i(oe,{size:"iconSm",variant:"ghost",onClick:Q,disabled:l(k)||!l(o)},{default:g(()=>[i(de,{name:"hugeicons:redo",class:he(["size-4! min-w-4 ",l(k)&&"animate-spin"])},null,8,["class"])]),_:1},8,["disabled"])]),_:1}),i(ve,null,{default:g(()=>Z[3]||(Z[3]=[F("Refresh Roles")])),_:1})]),_:1})]),_:1},8,["search","workspace-id"]),l(o)?(D(),U("div",Fs,[i(Ls,{ref_key:"userRolesTreeRef",ref:ae,roles:l(J),loading:l(c),onCreateUser:ye,canCreateUser:l(d),createUserDisabledReason:l(v),onDeleteUser:V,onRefresh:Q},null,8,["roles","loading","canCreateUser","createUserDisabledReason"])])):(D(),te(xe,{key:0,title:"No selected connection",desc:"Select a connection to view roles"})),i(_s,{open:l(L),"onUpdate:open":Z[1]||(Z[1]=Ue=>Ee(L)?L.value=Ue:null),loading:l(y)||l(K),databasesLoading:l(b),schemasLoading:l(R),databases:l(C),schemas:l(P),currentDatabase:l(r),error:l(O),onConfirm:E,onCancel:Z[2]||(Z[2]=Ue=>L.value=!1),onClearError:ie,onFetchSchemas:H},null,8,["open","loading","databasesLoading","schemasLoading","databases","schemas","currentDatabase","error"])])}}}),Us={class:"h-full w-full overflow-y-auto"},Vs={class:"h-full"},zs={key:1,class:"flex items-center"},js=se({__name:"ManagementAgentHistoryTree",props:{contextMenuItems:{},historySectionId:{},storageKey:{},treeData:{},initExpandedIds:{},validateRename:{type:Function}},emits:["clear-context-menu","click-node","context-node","delete-history","rename-history","cancel-rename","new-thread"],setup(e,{expose:t,emit:a}){const n=a,s=je("treeRef");return t({clearSelection:()=>{var o;return(o=s.value)==null?void 0:o.clearSelection()},collapseAll:()=>{var o;return(o=s.value)==null?void 0:o.collapseAll()},expandAll:()=>{var o;return(o=s.value)==null?void 0:o.expandAll()},focusItem:o=>{var r;return(r=s.value)==null?void 0:r.focusItem(o)},startEditing:o=>{var r;return(r=s.value)==null?void 0:r.startEditing(o)},get isExpandedAll(){var o;return((o=s.value)==null?void 0:o.isExpandedAll)??!1},get isMouseInside(){var o;return((o=s.value)==null?void 0:o.isMouseInside)??!1}}),(o,r)=>{const m=me,c=Re,f=Ie,u=Ae,p=De;return D(),U("div",Us,[i(Dt,{"context-menu-items":o.contextMenuItems,onOnClearContextMenu:r[5]||(r[5]=h=>n("clear-context-menu"))},{default:g(()=>[_("div",Vs,[i(ft,{ref_key:"treeRef",ref:s,class:"pt-1","storage-key":o.storageKey,"initial-data":o.treeData,"init-expanded-ids":o.initExpandedIds,"allow-drag-and-drop":!1,"allow-sort":!1,"validate-rename":o.validateRename,onClick:r[1]||(r[1]=h=>n("click-node",h)),onContextmenu:r[2]||(r[2]=h=>n("context-node",h)),onRename:r[3]||(r[3]=(h,d)=>n("rename-history",h,d)),onCancelRename:r[4]||(r[4]=h=>n("cancel-rename",h))},{actions:g(({node:h})=>[h.id===o.historySectionId?(D(),te(p,{key:0},{default:g(()=>[i(f,{"as-child":""},{default:g(()=>[i(c,{size:"iconSm",variant:"ghost",onClick:r[0]||(r[0]=_e(d=>n("new-thread"),["stop"]))},{default:g(()=>[i(m,{name:"hugeicons:plus-sign",class:"size-3.5"})]),_:1})]),_:1}),i(u,null,{default:g(()=>r[6]||(r[6]=[F(" New thread ")])),_:1})]),_:1})):h.id.startsWith("agent-history-")?(D(),U("div",zs,[i(p,null,{default:g(()=>[i(f,{"as-child":""},{default:g(()=>[i(c,{size:"iconSm",variant:"outline",class:"text-muted-foreground hover:text-primary",onClick:_e(d=>{var v;return(v=l(s))==null?void 0:v.startEditing(h.id)},["stop"])},{default:g(()=>[i(m,{name:"hugeicons:edit-02",class:"size-3.5"})]),_:2},1032,["onClick"])]),_:2},1024),i(u,null,{default:g(()=>r[7]||(r[7]=[F(" Rename thread ")])),_:1})]),_:2},1024),i(p,null,{default:g(()=>[i(f,{"as-child":""},{default:g(()=>[i(c,{size:"iconSm",variant:"ghost",class:"text-muted-foreground hover:text-destructive",onClick:_e(d=>n("delete-history",h.id),["stop"])},{default:g(()=>[i(m,{name:"hugeicons:delete-02",class:"size-3.5"})]),_:2},1032,["onClick"])]),_:2},1024),i(u,null,{default:g(()=>r[8]||(r[8]=[F(" Delete thread ")])),_:1})]),_:2},1024)])):re("",!0)]),_:1},8,["storage-key","initial-data","init-expanded-ids","validate-rename"])])]),_:1},8,["context-menu-items"])])}}}),Bs="agent-history-tree",ma=(e,t,a)=>{var s;if(a.has(t))return;a.add(t),(((s=e[t])==null?void 0:s.children)||[]).forEach(o=>ma(e,o,a))},qs=e=>{const{wsStateStore:t,tabViewStore:a}=Le(),{workspaceId:n,connectionId:s}=pe(t),o=ke(""),r=ut(o,Ze),m=q([]),{currentWorkspaceId:c,histories:f,selectedNodeId:u,selectNode:p,startNewChat:h,deleteHistory:d,renameHistory:v,sectionNodeIds:y}=Ra();dn(()=>{c.value=n.value||""});const w=B(()=>{const T=y.history,I=f.value.map(k=>({id:`agent-history-${k.id}`,parentId:T,name:k.title,type:"file",depth:1,iconOpen:"hugeicons:chatting-01",iconClose:"hugeicons:chatting-01",data:{preview:k.preview,updatedAt:k.updatedAt}}));return{[T]:{id:T,parentId:null,name:"Chat History",type:"folder",depth:0,iconOpen:"hugeicons:clock-05",iconClose:"hugeicons:clock-05",children:I.map(k=>k.id)},...Object.fromEntries(I.map(k=>[k.id,k]))}}),S=B(()=>{if(!r.value.trim())return w.value;const T=r.value.trim().toLowerCase(),I=new Set,k=w.value;Object.values(k).forEach(O=>{var ae,ce;const J=typeof((ae=O.data)==null?void 0:ae.preview)=="string"?O.data.preview:"";if(!O.name.toLowerCase().includes(T)&&!J.toLowerCase().includes(T))return;ma(k,O.id,I);let Q=O.parentId;for(;Q;)I.add(Q),Q=((ce=k[Q])==null?void 0:ce.parentId)||null});const L={};return I.forEach(O=>{const J=k[O];J&&(L[O]={...J,children:(J.children||[]).filter(Q=>I.has(Q))})}),L}),b=async T=>{if(!n.value||!s.value)return;const I="agent-workspace";await a.openTab({id:I,workspaceId:n.value,connectionId:s.value,schemaId:t.schemaId||"",name:"AI Agent",icon:"hugeicons:robotic",type:X.AgentChat,routeName:"workspaceId-connectionId-agent-tabViewId",routeParams:{tabViewId:I,connectionId:s.value},metadata:{type:X.AgentChat,historyId:T}}),await a.selectTab(I)},C=async()=>{h(),await b()},x=T=>{T.startsWith("agent-history-")&&d(T.replace("agent-history-",""))},R=async T=>{T!==y.history&&T.startsWith("agent-history-")&&(p(T),await b(T.replace("agent-history-","")))},P=(T,I)=>{v(T,I)},Y=T=>{if(T===y.history){m.value=[{title:"New Thread",icon:"hugeicons:quill-write-02",type:G.ACTION,select:()=>void C()}];return}if(!T.startsWith("agent-history-")){m.value=[];return}const I=T.replace("agent-history-","");m.value=[{title:"Open Thread",icon:"hugeicons:chat-spark-01",type:G.ACTION,select:()=>{p(T),b(I)}},{title:"Rename Thread",icon:"hugeicons:edit-02",type:G.ACTION,select:()=>{var k;(k=e.onRename)==null||k.call(e,T)}},{type:G.SEPARATOR},{title:"New Thread",icon:"hugeicons:quill-write-02",type:G.ACTION,select:()=>void C()},{type:G.SEPARATOR},{title:"Delete Thread",icon:"hugeicons:delete-02",type:G.ACTION,select:()=>d(I)}]},K=()=>{m.value=[]},$=()=>{if(e.isExpandedAll.value){e.collapseAll();return}e.expandAll()};return Se(()=>u.value,async T=>{await ze(),!(!T||!S.value[T])&&e.focusNode(T)},{flush:"post",immediate:!0}),{contextMenuItems:m,defaultExpandedNodeIds:[y.history],filteredHistoryTreeData:S,historySectionId:y.history,historyStorageKey:Bs,isExpandedAll:e.isExpandedAll,onClearContextMenu:K,onClickNode:R,onCreateThread:C,onDeleteHistory:x,onRenameHistory:P,onToggleCollapseHistory:$,onTreeContextMenu:Y,searchInput:o}},Hs={class:"flex h-full w-full flex-col overflow-hidden"},Gs={class:"flex flex-1 flex-col overflow-hidden"},Ws={class:"flex-1 overflow-y-auto"},Ks=se({__name:"ManagementAgent",setup(e){const{wsStateStore:t}=Le(),{workspaceId:a}=pe(t),n=je("treePanelRef"),{contextMenuItems:s,defaultExpandedNodeIds:o,filteredHistoryTreeData:r,historySectionId:m,historyStorageKey:c,isExpandedAll:f,onClearContextMenu:u,onClickNode:p,onCreateThread:h,onDeleteHistory:d,onRenameHistory:v,onToggleCollapseHistory:y,onTreeContextMenu:w,searchInput:S}=qs({focusNode:x=>{var R;return(R=n.value)==null?void 0:R.focusItem(x)},collapseAll:()=>{var x;return(x=n.value)==null?void 0:x.collapseAll()},expandAll:()=>{var x;return(x=n.value)==null?void 0:x.expandAll()},isExpandedAll:B(()=>{var x;return((x=n.value)==null?void 0:x.isExpandedAll)??!1}),onRename:x=>{var R;return(R=n.value)==null?void 0:R.startEditing(x)}}),b=B(()=>!f.value),C=B(()=>{var R;const x=r.value[m];return!x||(((R=x.children)==null?void 0:R.length)??0)===0});return(x,R)=>{const P=me,Y=Re,K=Ke;return D(),U("div",Hs,[i(l(et),{search:l(S),"onUpdate:search":R[0]||(R[0]=$=>Ee(S)?S.value=$:null),title:"Chat History","show-search":!0,"show-connection":!0,"show-schema":!1,"workspace-id":l(a),"search-placeholder":"Search threads..."},{actions:g(()=>[i(l(De),null,{default:g(()=>[i(l(Ie),{"as-child":""},{default:g(()=>[i(Y,{size:"iconSm",variant:"ghost",onClick:l(h)},{default:g(()=>[i(P,{name:"hugeicons:plus-sign",class:"size-4"})]),_:1},8,["onClick"])]),_:1}),i(l(Ae),null,{default:g(()=>R[2]||(R[2]=[F(" New thread ")])),_:1})]),_:1}),i(l(De),null,{default:g(()=>[i(l(Ie),{"as-child":""},{default:g(()=>[i(Y,{size:"iconSm",variant:"ghost",onClick:l(y)},{default:g(()=>[i(P,{name:l(b)?"hugeicons:unfold-more":"hugeicons:unfold-less",class:"size-4"},null,8,["name"])]),_:1},8,["onClick"])]),_:1}),i(l(Ae),null,{default:g(()=>[F(ne(l(b)?"Expand all":"Collapse all"),1)]),_:1})]),_:1})]),_:1},8,["search","workspace-id"]),_("div",Gs,[_("div",Ws,[l(C)?(D(),te(K,{key:0,title:"No chat history yet",desc:"Start a new thread to ask everything about your data!"},{default:g(()=>[i(Y,{variant:"outline",size:"xs",onClick:l(h)},{default:g(()=>[i(P,{name:"hugeicons:plus-sign"}),R[3]||(R[3]=F(" Start chat "))]),_:1},8,["onClick"])]),_:1})):re("",!0),i(js,{ref_key:"treePanelRef",ref:n,"context-menu-items":l(s),"history-section-id":l(m),"storage-key":l(c),"tree-data":l(r),"init-expanded-ids":l(o),onClickNode:l(p),onContextNode:l(w),onClearContextMenu:l(u),onDeleteHistory:l(d),onRenameHistory:R[1]||(R[1]=($,T)=>l(v)($.replace("agent-history-",""),T)),onNewThread:l(h)},null,8,["context-menu-items","history-section-id","storage-key","tree-data","init-expanded-ids","onClickNode","onContextNode","onClearContextMenu","onDeleteHistory","onNewThread"])])])])}}}),Qs={key:0,class:"w-full h-full flex flex-col"},Ys=se({__name:"PrimarySideBar",setup(e){const t=fa(),a=ct(),n=ke();return Se(()=>t.activityActive,()=>{t.activityActive===we.Explorer&&(n.value=Rr),t.activityActive===we.Schemas&&(n.value=al),t.activityActive===we.ErdDiagram&&(n.value=Sr),t.activityActive===we.UsersRoles&&(n.value=Ms),t.activityActive===we.DatabaseExport&&(n.value=vl),t.activityActive===we.Agent&&(n.value=Ks)},{immediate:!0}),(s,o)=>l(a).layoutSize[0]?(D(),U("div",Qs,[(D(),te(ao,null,[(D(),te(Xe(l(n))))],1024))])):re("",!0)}}),Xs={class:"w-full h-full flex flex-col",id:"preview-select-row"},Js=se({__name:"SecondarySideBar",setup(e){return(t,a)=>(D(),U("div",Xs))}}),Zs=se({__name:"CurrentPositionPath",setup(e){const{workspaceStore:t,connectionStore:a,tabViewStore:n,schemaStore:s}=Le(),{selectedWorkspace:o}=pe(t),{selectedConnection:r}=pe(a),{activeSchema:m}=pe(s),{activeTab:c}=pe(n);return B(()=>!!m.value&&!!r.value),B(()=>!!m.value&&!!r.value&&!!c.value),(f,u)=>{const p=me;return D(),te(l(oo),null,{default:g(()=>[i(l(ro),{class:"gap-0.5!"},{default:g(()=>{var h;return[i(l(An),{class:"text-xs"},{default:g(()=>{var d,v;return[(d=l(o))!=null&&d.icon?(D(),te(p,{key:0,name:l(o).icon,class:"size-3!"},null,8,["name"])):re("",!0),F(" "+ne((v=l(o))==null?void 0:v.name),1)]}),_:1}),(h=l(r))!=null&&h.id?(D(),te(l(lo),{key:0})):re("",!0),i(l(An),{class:"text-xs"},{default:g(()=>{var d,v,y,w;return[(d=l(r))!=null&&d.id?(D(),te(Xe((y=l(qt)((v=l(r))==null?void 0:v.type))==null?void 0:y.icon),{key:0,class:"size-3!"})):re("",!0),F(" "+ne((w=l(r))==null?void 0:w.name),1)]}),_:1})]}),_:1})]),_:1})}}}),ei={class:"w-full h-6 min-h-6 shadow px-2 flex items-center justify-between bg-sidebar-accent"},ti={class:"flex items-center gap-3 h-full"},ni={key:0,class:"text-muted-foreground text-xs"},ai={class:"text-foreground inline"},oi={class:"flex items-center gap-3"},ri=se({__name:"StatusBar",setup(e){const{tabViewStore:t,wsStateStore:a}=Le(),{openChangelog:n}=so(),{openSettings:s}=io(),{openInstanceInsightsTab:o}=dt(),{activeTab:r}=pe(t),{workspaceId:m,connectionId:c}=pe(a),f=B(()=>!!m.value&&!!c.value),u=async()=>{await co("/")},p=async()=>{await o()},h=B(()=>{var v;const d=(v=r.value)==null?void 0:v.type;if(!d)return"";switch(d){case X.AllERD:case X.DetailERD:return"erd";case X.TableOverview:case X.TableDetail:return"table";case X.FunctionsOverview:case X.FunctionsDetail:return"func";case X.ViewOverview:case X.ViewDetail:return"view";case X.CodeQuery:return"raw query";case X.DatabaseTools:return"db tools";case X.InstanceInsights:return"insights";default:return""}});return(d,v)=>{var C,x,R;const y=me,w=Ie,S=Ae,b=De;return D(),U("div",ei,[_("div",ti,[i(b,null,{default:g(()=>[i(w,{"as-child":""},{default:g(()=>[_("div",{class:"flex items-center h-full gap-0.5 hover:bg-muted px-1 rounded cursor-pointer",onClick:u},[i(y,{name:"hugeicons:home-06",class:"size-4!"}),v[2]||(v[2]=_("p",{class:"text-xs inline"},"Home",-1))])]),_:1}),i(S,null,{default:g(()=>v[3]||(v[3]=[F(" Back to Home ")])),_:1})]),_:1}),i(Zs)]),l(r)?(D(),U("div",ni,[F(ne(l(h))+": ",1),_("p",ai,ne((C=l(r))!=null&&C.schemaId?`${(x=l(r))==null?void 0:x.schemaId}.`:"")+ne((R=l(r))==null?void 0:R.name),1)])):re("",!0),_("div",oi,[i(b,null,{default:g(()=>[i(w,{"as-child":""},{default:g(()=>[_("div",{class:he(["flex items-center justify-center hover:bg-muted rounded cursor-pointer",!l(f)&&"opacity-50 cursor-not-allowed"]),onClick:p},[i(y,{name:"hugeicons:activity-02",class:"size-4!"})],2)]),_:1}),i(S,null,{default:g(()=>v[4]||(v[4]=[F(" Instance Insights ")])),_:1})]),_:1}),i(b,null,{default:g(()=>[i(w,{"as-child":""},{default:g(()=>[_("div",{class:"flex items-center justify-center hover:bg-muted rounded cursor-pointer",onClick:v[0]||(v[0]=(...P)=>l(n)&&l(n)(...P))},[i(y,{name:"hugeicons:notification-01",class:"size-4!"})])]),_:1}),i(S,null,{default:g(()=>v[5]||(v[5]=[F(" What's New ")])),_:1})]),_:1}),i(b,null,{default:g(()=>[i(w,{"as-child":""},{default:g(()=>[_("div",{class:"flex items-center justify-center hover:bg-muted rounded cursor-pointer",onClick:v[1]||(v[1]=P=>l(s)())},[i(y,{name:"hugeicons:settings-01",class:"size-4!"})])]),_:1}),i(S,null,{default:g(()=>v[6]||(v[6]=[F(" Settings (⌘,) ")])),_:1})]),_:1})])])}}});var Mt={},ot={},Nn;function va(){if(Nn)return ot;Nn=1,Object.defineProperty(ot,"__esModule",{value:!0}),ot.bind=void 0;function e(t,a){var n=a.type,s=a.listener,o=a.options;return t.addEventListener(n,s,o),function(){t.removeEventListener(n,s,o)}}return ot.bind=e,ot}var Ge={},kn;function li(){if(kn)return Ge;kn=1;var e=Ge&&Ge.__assign||function(){return e=Object.assign||function(o){for(var r,m=1,c=arguments.length;m<c;m++){r=arguments[m];for(var f in r)Object.prototype.hasOwnProperty.call(r,f)&&(o[f]=r[f])}return o},e.apply(this,arguments)};Object.defineProperty(Ge,"__esModule",{value:!0}),Ge.bindAll=void 0;var t=va();function a(o){if(!(typeof o>"u"))return typeof o=="boolean"?{capture:o}:o}function n(o,r){if(r==null)return o;var m=e(e({},o),{options:e(e({},a(r)),a(o.options))});return m}function s(o,r,m){var c=r.map(function(f){var u=n(f,m);return(0,t.bind)(o,u)});return function(){c.forEach(function(u){return u()})}}return Ge.bindAll=s,Ge}var Ln;function si(){return Ln||(Ln=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.bindAll=e.bind=void 0;var t=va();Object.defineProperty(e,"bind",{enumerable:!0,get:function(){return t.bind}});var a=li();Object.defineProperty(e,"bindAll",{enumerable:!0,get:function(){return a.bindAll}})}(Mt)),Mt}var Je=si(),ga="data-pdnd-honey-pot";function ya(e){return e instanceof Element&&e.hasAttribute(ga)}function wn(e){var t=document.elementsFromPoint(e.x,e.y),a=ia(t,2),n=a[0],s=a[1];return n?ya(n)?s??null:n:null}function lt(e){"@babel/helpers - typeof";return lt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},lt(e)}function ii(e,t){if(lt(e)!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var n=a.call(e,t);if(lt(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ci(e){var t=ii(e,"string");return lt(t)=="symbol"?t:t+""}function Ne(e,t,a){return(t=ci(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}var ha=2147483647;function Pn(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),a.push.apply(a,n)}return a}function Fn(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?Pn(Object(a),!0).forEach(function(n){Ne(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):Pn(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}var st=2,Mn=st/2;function ui(e){return{x:Math.floor(e.x),y:Math.floor(e.y)}}function di(e){return{x:e.x-Mn,y:e.y-Mn}}function fi(e){return{x:Math.max(e.x,0),y:Math.max(e.y,0)}}function pi(e){return{x:Math.min(e.x,window.innerWidth-st),y:Math.min(e.y,window.innerHeight-st)}}function Un(e){var t=e.client,a=pi(fi(di(ui(t))));return DOMRect.fromRect({x:a.x,y:a.y,width:st,height:st})}function Vn(e){var t=e.clientRect;return{left:"".concat(t.left,"px"),top:"".concat(t.top,"px"),width:"".concat(t.width,"px"),height:"".concat(t.height,"px")}}function mi(e){var t=e.client,a=e.clientRect;return t.x>=a.x&&t.x<=a.x+a.width&&t.y>=a.y&&t.y<=a.y+a.height}function vi(e){var t=e.initial,a=document.createElement("div");a.setAttribute(ga,"true");var n=Un({client:t});Object.assign(a.style,Fn(Fn({backgroundColor:"transparent",position:"fixed",padding:0,margin:0,boxSizing:"border-box"},Vn({clientRect:n})),{},{pointerEvents:"auto",zIndex:ha})),document.body.appendChild(a);var s=Je.bind(window,{type:"pointermove",listener:function(r){var m={x:r.clientX,y:r.clientY};n=Un({client:m}),Object.assign(a.style,Vn({clientRect:n}))},options:{capture:!0}});return function(r){var m=r.current;if(s(),mi({client:m,clientRect:n})){a.remove();return}function c(){f(),a.remove()}var f=Je.bindAll(window,[{type:"pointerdown",listener:c},{type:"pointermove",listener:c},{type:"focusin",listener:c},{type:"focusout",listener:c},{type:"dragstart",listener:c},{type:"dragenter",listener:c},{type:"dragover",listener:c}],{capture:!0})}}function gi(){var e=null;function t(){return e=null,Je.bind(window,{type:"pointermove",listener:function(s){e={x:s.clientX,y:s.clientY}},options:{capture:!0}})}function a(){var n=null;return function(o){var r=o.eventName,m=o.payload;if(r==="onDragStart"){var c=m.location.initial.input,f=e??{x:c.clientX,y:c.clientY};n=vi({initial:f})}if(r==="onDrop"){var u,p=m.location.current.input;(u=n)===null||u===void 0||u({current:{x:p.clientX,y:p.clientY}}),n=null,e=null}}}return{bindEvents:t,getOnPostDispatch:a}}function yi(e){if(Array.isArray(e))return uo(e)}function hi(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function bi(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
64
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ba(e){return yi(e)||hi(e)||fo(e)||bi()}function Sn(e){var t=null;return function(){if(!t){for(var n=arguments.length,s=new Array(n),o=0;o<n;o++)s[o]=arguments[o];var r=e.apply(this,s);t={result:r}}return t.result}}var wi=Sn(function(){return navigator.userAgent.includes("Firefox")}),It=Sn(function(){var t=navigator,a=t.userAgent;return a.includes("AppleWebKit")&&!a.includes("Chrome")}),Kt={isLeavingWindow:Symbol("leaving"),isEnteringWindow:Symbol("entering")};function Si(e){var t=e.dragLeave;return It()?t.hasOwnProperty(Kt.isLeavingWindow):!1}(function(){if(typeof window>"u"||!It())return;function t(){return{enterCount:0,isOverWindow:!1}}var a=t();function n(){a=t()}Je.bindAll(window,[{type:"dragstart",listener:function(){a.enterCount=0,a.isOverWindow=!0}},{type:"drop",listener:n},{type:"dragend",listener:n},{type:"dragenter",listener:function(o){!a.isOverWindow&&a.enterCount===0&&(o[Kt.isEnteringWindow]=!0),a.isOverWindow=!0,a.enterCount++}},{type:"dragleave",listener:function(o){a.enterCount--,a.isOverWindow&&a.enterCount===0&&(o[Kt.isLeavingWindow]=!0,a.isOverWindow=!1)}}],{capture:!0})})();function xi(e){return"nodeName"in e}function Ti(e){return xi(e)&&e.ownerDocument!==document}function Ci(e){var t=e.dragLeave,a=t.type,n=t.relatedTarget;return a!=="dragleave"?!1:It()?Si({dragLeave:t}):n==null?!0:wi()?Ti(n):n instanceof HTMLIFrameElement}function Ei(e){var t=e.onDragEnd;return[{type:"pointermove",listener:function(){var a=0;return function(){if(a<20){a++;return}t()}}()},{type:"pointerdown",listener:t}]}function rt(e){return{altKey:e.altKey,button:e.button,buttons:e.buttons,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey,clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY}}var _i=function(t){var a=[],n=null,s=function(){for(var r=arguments.length,m=new Array(r),c=0;c<r;c++)m[c]=arguments[c];a=m,!n&&(n=requestAnimationFrame(function(){n=null,t.apply(void 0,a)}))};return s.cancel=function(){n&&(cancelAnimationFrame(n),n=null)},s},Ut=_i(function(e){return e()}),bt=function(){var e=null;function t(n){var s=requestAnimationFrame(function(){e=null,n()});e={frameId:s,fn:n}}function a(){e&&(cancelAnimationFrame(e.frameId),e.fn(),e=null)}return{schedule:t,flush:a}}();function Di(e){var t=e.source,a=e.initial,n=e.dispatchEvent,s={dropTargets:[]};function o(m){n(m),s={dropTargets:m.payload.location.current.dropTargets}}var r={start:function(c){var f=c.nativeSetDragImage,u={current:a,previous:s,initial:a};o({eventName:"onGenerateDragPreview",payload:{source:t,location:u,nativeSetDragImage:f}}),bt.schedule(function(){o({eventName:"onDragStart",payload:{source:t,location:u}})})},dragUpdate:function(c){var f=c.current;bt.flush(),Ut.cancel(),o({eventName:"onDropTargetChange",payload:{source:t,location:{initial:a,previous:s,current:f}}})},drag:function(c){var f=c.current;Ut(function(){bt.flush();var u={initial:a,previous:s,current:f};o({eventName:"onDrag",payload:{source:t,location:u}})})},drop:function(c){var f=c.current,u=c.updatedSourcePayload;bt.flush(),Ut.cancel(),o({eventName:"onDrop",payload:{source:u??t,location:{current:f,previous:s,initial:a}}})}};return r}var Qt={isActive:!1};function wa(){return!Qt.isActive}function Ii(e){return e.dataTransfer?e.dataTransfer.setDragImage.bind(e.dataTransfer):null}function Ai(e){var t=e.current,a=e.next;if(t.length!==a.length)return!0;for(var n=0;n<t.length;n++)if(t[n].element!==a[n].element)return!0;return!1}function Ri(e){var t=e.event,a=e.dragType,n=e.getDropTargetsOver,s=e.dispatchEvent;if(!wa())return;var o=$i({event:t,dragType:a,getDropTargetsOver:n});Qt.isActive=!0;var r={current:o};Vt({event:t,current:o.dropTargets});var m=Di({source:a.payload,dispatchEvent:s,initial:o});function c(d){var v=Ai({current:r.current.dropTargets,next:d.dropTargets});r.current=d,v&&m.dragUpdate({current:r.current})}function f(d){var v=rt(d),y=ya(d.target)?wn({x:v.clientX,y:v.clientY}):d.target,w=n({target:y,input:v,source:a.payload,current:r.current.dropTargets});w.length&&(d.preventDefault(),Vt({event:d,current:w})),c({dropTargets:w,input:v})}function u(){r.current.dropTargets.length&&c({dropTargets:[],input:r.current.input}),m.drop({current:r.current,updatedSourcePayload:null}),p()}function p(){Qt.isActive=!1,h()}var h=Je.bindAll(window,[{type:"dragover",listener:function(v){f(v),m.drag({current:r.current})}},{type:"dragenter",listener:f},{type:"dragleave",listener:function(v){Ci({dragLeave:v})&&(c({input:r.current.input,dropTargets:[]}),a.startedFrom==="external"&&u())}},{type:"drop",listener:function(v){if(r.current={dropTargets:r.current.dropTargets,input:rt(v)},!r.current.dropTargets.length){u();return}v.preventDefault(),Vt({event:v,current:r.current.dropTargets}),m.drop({current:r.current,updatedSourcePayload:a.type==="external"?a.getDropPayload(v):null}),p()}},{type:"dragend",listener:function(v){r.current={dropTargets:r.current.dropTargets,input:rt(v)},u()}}].concat(ba(Ei({onDragEnd:u}))),{capture:!0});m.start({nativeSetDragImage:Ii(t)})}function Vt(e){var t,a=e.event,n=e.current,s=(t=n[0])===null||t===void 0?void 0:t.dropEffect;s!=null&&a.dataTransfer&&(a.dataTransfer.dropEffect=s)}function $i(e){var t=e.event,a=e.dragType,n=e.getDropTargetsOver,s=rt(t);if(a.startedFrom==="external")return{input:s,dropTargets:[]};var o=n({input:s,source:a.payload,target:t.target,current:[]});return{input:s,dropTargets:o}}var zn={canStart:wa,start:Ri},Yt=new Map;function Oi(e){var t=e.typeKey,a=e.mount,n=Yt.get(t);if(n)return n.usageCount++,n;var s={typeKey:t,unmount:a(),usageCount:1};return Yt.set(t,s),s}function Ni(e){var t=Oi(e);return function(){t.usageCount--,!(t.usageCount>0)&&(t.unmount(),Yt.delete(e.typeKey))}}function tt(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];return function(){t.forEach(function(s){return s()})}}function Sa(e,t){var a=t.attribute,n=t.value;return e.setAttribute(a,n),function(){return e.removeAttribute(a)}}function jn(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),a.push.apply(a,n)}return a}function qe(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?jn(Object(a),!0).forEach(function(n){Ne(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):jn(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}function zt(e,t){var a=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!a){if(Array.isArray(e)||(a=ki(e))||t){a&&(e=a);var n=0,s=function(){};return{s,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(f){throw f},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
65
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o,r=!0,m=!1;return{s:function(){a=a.call(e)},n:function(){var f=a.next();return r=f.done,f},e:function(f){m=!0,o=f},f:function(){try{r||a.return==null||a.return()}finally{if(m)throw o}}}}function ki(e,t){if(e){if(typeof e=="string")return Bn(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?Bn(e,t):void 0}}function Bn(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}function jt(e){return e.slice(0).reverse()}function Li(e){var t=e.typeKey,a=e.defaultDropEffect,n=new WeakMap,s="data-drop-target-for-".concat(t),o="[".concat(s,"]");function r(d){return n.set(d.element,d),function(){return n.delete(d.element)}}function m(d){return tt(Sa(d.element,{attribute:s,value:"true"}),r(d))}function c(d){var v,y,w,S,b=d.source,C=d.target,x=d.input,R=d.result,P=R===void 0?[]:R;if(C==null)return P;if(!(C instanceof Element))return C instanceof Node?c({source:b,target:C.parentElement,input:x,result:P}):P;var Y=C.closest(o);if(Y==null)return P;var K=n.get(Y);if(K==null)return P;var $={input:x,source:b,element:K.element};if(K.canDrop&&!K.canDrop($))return c({source:b,target:K.element.parentElement,input:x,result:P});var T=(v=(y=K.getData)===null||y===void 0?void 0:y.call(K,$))!==null&&v!==void 0?v:{},I=(w=(S=K.getDropEffect)===null||S===void 0?void 0:S.call(K,$))!==null&&w!==void 0?w:a,k={data:T,element:K.element,dropEffect:I,isActiveDueToStickiness:!1};return c({source:b,target:K.element.parentElement,input:x,result:[].concat(ba(P),[k])})}function f(d){var v=d.eventName,y=d.payload,w=zt(y.location.current.dropTargets),S;try{for(w.s();!(S=w.n()).done;){var b,C=S.value,x=n.get(C.element),R=qe(qe({},y),{},{self:C});x==null||(b=x[v])===null||b===void 0||b.call(x,R)}}catch(P){w.e(P)}finally{w.f()}}var u={onGenerateDragPreview:f,onDrag:f,onDragStart:f,onDrop:f,onDropTargetChange:function(v){var y=v.payload,w=new Set(y.location.current.dropTargets.map(function(ae){return ae.element})),S=new Set,b=zt(y.location.previous.dropTargets),C;try{for(b.s();!(C=b.n()).done;){var x,R=C.value;S.add(R.element);var P=n.get(R.element),Y=w.has(R.element),K=qe(qe({},y),{},{self:R});if(P==null||(x=P.onDropTargetChange)===null||x===void 0||x.call(P,K),!Y){var $;P==null||($=P.onDragLeave)===null||$===void 0||$.call(P,K)}}}catch(ae){b.e(ae)}finally{b.f()}var T=zt(y.location.current.dropTargets),I;try{for(T.s();!(I=T.n()).done;){var k,L,O=I.value;if(!S.has(O.element)){var J=qe(qe({},y),{},{self:O}),Q=n.get(O.element);Q==null||(k=Q.onDropTargetChange)===null||k===void 0||k.call(Q,J),Q==null||(L=Q.onDragEnter)===null||L===void 0||L.call(Q,J)}}}catch(ae){T.e(ae)}finally{T.f()}}};function p(d){u[d.eventName](d)}function h(d){var v=d.source,y=d.target,w=d.input,S=d.current,b=c({source:v,target:y,input:w});if(b.length>=S.length)return b;for(var C=jt(S),x=jt(b),R=[],P=0;P<C.length;P++){var Y,K=C[P],$=x[P];if($!=null){R.push($);continue}var T=R[P-1],I=C[P-1];if((T==null?void 0:T.element)!==(I==null?void 0:I.element))break;var k=n.get(K.element);if(!k)break;var L={input:w,source:v,element:k.element};if(k.canDrop&&!k.canDrop(L)||!((Y=k.getIsSticky)!==null&&Y!==void 0&&Y.call(k,L)))break;R.push(qe(qe({},K),{},{isActiveDueToStickiness:!0}))}return jt(R)}return{dropTargetForConsumers:m,getIsOver:h,dispatchEvent:p}}function Pi(e,t){var a=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!a){if(Array.isArray(e)||(a=Fi(e))||t){a&&(e=a);var n=0,s=function(){};return{s,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(f){throw f},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
66
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o,r=!0,m=!1;return{s:function(){a=a.call(e)},n:function(){var f=a.next();return r=f.done,f},e:function(f){m=!0,o=f},f:function(){try{r||a.return==null||a.return()}finally{if(m)throw o}}}}function Fi(e,t){if(e){if(typeof e=="string")return qn(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?qn(e,t):void 0}}function qn(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}function Hn(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),a.push.apply(a,n)}return a}function Mi(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?Hn(Object(a),!0).forEach(function(n){Ne(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):Hn(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}function Ui(){var e=new Set,t=null;function a(o){t&&(!o.canMonitor||o.canMonitor(t.canMonitorArgs))&&t.active.add(o)}function n(o){var r=Mi({},o);return e.add(r),a(r),function(){e.delete(r),t&&t.active.delete(r)}}function s(o){var r=o.eventName,m=o.payload;if(r==="onGenerateDragPreview"){t={canMonitorArgs:{initial:m.location.initial,source:m.source},active:new Set};var c=Pi(e),f;try{for(c.s();!(f=c.n()).done;){var u=f.value;a(u)}}catch(w){c.e(w)}finally{c.f()}}if(t){for(var p=Array.from(t.active),h=0,d=p;h<d.length;h++){var v=d[h];if(t.active.has(v)){var y;(y=v[r])===null||y===void 0||y.call(v,m)}}r==="onDrop"&&(t.active.clear(),t=null)}}return{dispatchEvent:s,monitorForConsumers:n}}function Vi(e){var t=e.typeKey,a=e.mount,n=e.dispatchEventToSource,s=e.onPostDispatch,o=e.defaultDropEffect,r=Ui(),m=Li({typeKey:t,defaultDropEffect:o});function c(p){n==null||n(p),m.dispatchEvent(p),r.dispatchEvent(p),s==null||s(p)}function f(p){var h=p.event,d=p.dragType;zn.start({event:h,dragType:d,getDropTargetsOver:m.getIsOver,dispatchEvent:c})}function u(){function p(){var h={canStart:zn.canStart,start:f};return a(h)}return Ni({typeKey:t,mount:p})}return{registerUsage:u,dropTarget:m.dropTargetForConsumers,monitor:r.monitorForConsumers}}var zi=Sn(function(){return navigator.userAgent.toLocaleLowerCase().includes("android")}),ji="pdnd:android-fallback",Gn="text/plain",Bi="text/uri-list",qi="application/vnd.pdnd",Et=new WeakMap;function Hi(e){return Et.set(e.element,e),function(){Et.delete(e.element)}}var Wn=gi(),xn=Vi({typeKey:"element",defaultDropEffect:"move",mount:function(t){return tt(Wn.bindEvents(),Je.bind(document,{type:"dragstart",listener:function(n){var s,o,r,m,c,f;if(t.canStart(n)&&!n.defaultPrevented&&n.dataTransfer){var u=n.target;if(!(u instanceof HTMLElement))return null;var p=Et.get(u);if(!p)return null;var h=rt(n),d={element:p.element,dragHandle:(s=p.dragHandle)!==null&&s!==void 0?s:null,input:h};if(p.canDrag&&!p.canDrag(d))return n.preventDefault(),null;if(p.dragHandle){var v=wn({x:h.clientX,y:h.clientY});if(!p.dragHandle.contains(v))return n.preventDefault(),null}var y=(o=(r=p.getInitialDataForExternal)===null||r===void 0?void 0:r.call(p,d))!==null&&o!==void 0?o:null;if(y)for(var w=0,S=Object.entries(y);w<S.length;w++){var b=ia(S[w],2),C=b[0],x=b[1];n.dataTransfer.setData(C,x??"")}zi()&&!n.dataTransfer.types.includes(Gn)&&!n.dataTransfer.types.includes(Bi)&&n.dataTransfer.setData(Gn,ji),n.dataTransfer.setData(qi,"");var R={element:p.element,dragHandle:(m=p.dragHandle)!==null&&m!==void 0?m:null,data:(c=(f=p.getInitialData)===null||f===void 0?void 0:f.call(p,d))!==null&&c!==void 0?c:{}},P={type:"element",payload:R,startedFrom:"internal"};t.start({event:n,dragType:P})}}}))},dispatchEventToSource:function(t){var a,n,s=t.eventName,o=t.payload;(a=Et.get(o.source.element))===null||a===void 0||(n=a[s])===null||n===void 0||n.call(a,o)},onPostDispatch:Wn.getOnPostDispatch()}),Gi=xn.dropTarget,Tn=xn.monitor;function Wi(e){return tt(xn.registerUsage(),Hi(e),Sa(e.element,{attribute:"draggable",value:"true"}))}var it=new Map,Ct=new Set;function xa(e){Ki(e);var t=it.get(e);if(t)return t;var a={timeOfEngagementStart:Date.now()};return it.set(e,a),a}function Ki(e){Ct.add(e)}function Qi(e){Ct.clear(),e(),it.forEach(function(t,a){Ct.has(a)||it.delete(a)}),Ct.clear()}function Yi(){it.clear()}var Kn=new Map;function Xi(e){var t=Kn.get(e);if(t)return t;var a=Ji(e);return Kn.set(e,a),a}function Ji(e){var t={type:"idle"},a=[];function n(c){if(t.type==="running"){var f=c-t.timeLastFrameFinished,u=t,p=u.latestArgs,h=wn({x:p.location.current.input.clientX,y:p.location.current.input.clientY});Qi(function(){a.forEach(function(d){return d({underUsersPointer:h,latestArgs:p,timeSinceLastFrame:f})})}),t.timeLastFrameFinished=c,t.frameId=requestAnimationFrame(n)}}function s(){t.type!=="idle"&&(cancelAnimationFrame(t.frameId),Yi(),t={type:"idle"})}function o(c){t.type==="idle"&&(t={type:"initializing",latestArgs:c,frameId:requestAnimationFrame(function(f){t.type==="initializing"&&(t={type:"running",timeLastFrameFinished:f,latestArgs:t.latestArgs,frameId:requestAnimationFrame(n)})})})}function r(c){if(t.type==="idle"){o(c);return}t.latestArgs=c}e({onDragStart:o,onDropTargetChange:r,onDrag:r,onDrop:s});var m={onFrame:function(f){a.push(f)}};return m}var Xt="data-auto-scrollable",Zi="[".concat(Xt,'="true"]');function ec(e){return e.setAttribute(Xt,"true"),function(){return e.removeAttribute(Xt)}}function Qn(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),a.push.apply(a,n)}return a}function Yn(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?Qn(Object(a),!0).forEach(function(n){Ne(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):Qn(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}var tc={startHitboxAtPercentageRemainingOfElement:{top:.25,right:.25,bottom:.25,left:.25},maxScrollAtPercentageRemainingOfHitbox:{top:.5,right:.5,bottom:.5,left:.5},timeDampeningDurationMs:400,maxMainAxisHitboxSize:180},nc={standard:15*60,fast:25*60};function Ta(e){var t;return Yn(Yn({},tc),{},{maxPixelScrollPerSecond:nc[(t=e==null?void 0:e.maxScrollSpeed)!==null&&t!==void 0?t:"standard"]})}var ac={top:function(t){return t.scrollTop>0},right:function(t){return Math.ceil(t.scrollLeft)+t.clientWidth<t.scrollWidth},bottom:function(t){return Math.ceil(t.scrollTop)+t.clientHeight<t.scrollHeight},left:function(t){return t.scrollLeft>0}},oc=["top","right","bottom","left"],rc={top:"vertical",right:"horizontal",bottom:"vertical",left:"horizontal"},Xn={start:"top",end:"bottom",point:"y",size:"height"},Jn={start:"left",end:"right",point:"x",size:"width"},Ca={vertical:{mainAxis:Xn,crossAxis:Jn},horizontal:{mainAxis:Jn,crossAxis:Xn}},Cn={top:"start",right:"end",bottom:"end",left:"start"};function wt(e){var t=e.edge,a=e.axis;return function(s){var o,r=s.clientRect,m=s.config,c=Ca[a],f=c.mainAxis,u=c.crossAxis,p=Cn[t],h=Math.min(m.startHitboxAtPercentageRemainingOfElement[t]*r[f.size],m.maxMainAxisHitboxSize);return DOMRect.fromRect((o={},Ne(o,f.point,p==="start"?r[f.point]:r[f.point]+r[f.size]-h),Ne(o,u.point,r[u.point]),Ne(o,f.size,h),Ne(o,u.size,r[u.size]),o))}}var lc={top:wt({axis:"vertical",edge:"top"}),right:wt({axis:"horizontal",edge:"right"}),bottom:wt({axis:"vertical",edge:"bottom"}),left:wt({axis:"horizontal",edge:"left"})};function Jt(e){var t=e.startOfRange,a=e.endOfRange,n=e.value,s=t<a;if(!s||n<t)return 0;if(n>a)return 1;var o=a-t;return(n-t)/o}function sc(e){var t=e.timeSinceLastFrame,a=e.config,n=a.maxPixelScrollPerSecond/1e3,s=Math.ceil(n*t),o=a.maxPixelScrollPerSecond/60;return Math.min(s,o)}function ic(e){var t=e.client,a=e.axis,n=e.edge,s=e.hitbox,o=e.config,r=Ca[a].mainAxis,m=Cn[n],c=s[r.size]*o.maxScrollAtPercentageRemainingOfHitbox[n];if(m==="end")return Jt({startOfRange:s[r.start],endOfRange:s[r.end]-c,value:t[r.point]});var f=Jt({startOfRange:s[r.start]+c,endOfRange:s[r.end],value:t[r.point]});return 1-f}function St(e){var t=e.client,a=e.timeSinceLastFrame,n=e.engagement,s=e.axis,o=e.hitbox,r=e.edge,m=e.isDistanceDampeningEnabled,c=e.config,f=sc({timeSinceLastFrame:a,config:c}),u=m?ic({client:t,edge:r,hitbox:o,axis:s,config:c}):1,p=Jt({startOfRange:n.timeOfEngagementStart,endOfRange:n.timeOfEngagementStart+c.timeDampeningDurationMs,value:Date.now()}),h=u*p,d=Math.max(f*h,1),v=Cn[r];return v==="end"?d:-1*d}function cc(e,t){return t==="all"||e===t}function uc(e){var t=e.client,a=e.clientRect;return t.x>=a.x&&t.x<=a.x+a.width&&t.y>=a.y&&t.y<=a.y+a.height}function dc(e){return e.getBoundingClientRect()}function Ea(e){var t=e.element,a=e.input,n=e.timeSinceLastFrame,s=e.engagement,o=e.config,r=e.allowedAxis,m=e.getRect,c=m===void 0?dc:m,f={x:a.clientX,y:a.clientY},u=c(t),p=oc.reduce(function(v,y){var w=lc[y]({clientRect:u,config:o}),S=rc[y];return!cc(S,r)||!uc({client:f,clientRect:w})||!ac[y](t)||v.set(y,{edge:y,hitbox:w}),v},new Map),h=function(){var v="horizontal",y=p.get("left");if(y)return St({client:f,edge:y.edge,hitbox:y.hitbox,axis:v,timeSinceLastFrame:n,engagement:s,isDistanceDampeningEnabled:!0,config:o});var w=p.get("right");return w?St({client:f,edge:w.edge,hitbox:w.hitbox,axis:v,timeSinceLastFrame:n,engagement:s,isDistanceDampeningEnabled:!0,config:o}):0}(),d=function(){var v="vertical",y=p.get("bottom");if(y)return St({client:f,edge:y.edge,hitbox:y.hitbox,axis:v,timeSinceLastFrame:n,engagement:s,isDistanceDampeningEnabled:!0,config:o});var w=p.get("top");return w?St({client:f,edge:w.edge,hitbox:w.hitbox,axis:v,timeSinceLastFrame:n,engagement:s,isDistanceDampeningEnabled:!0,config:o}):0}();return{left:h,top:d}}function fc(e,t){var a=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!a){if(Array.isArray(e)||(a=pc(e))||t){a&&(e=a);var n=0,s=function(){};return{s,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(f){throw f},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
67
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o,r=!0,m=!1;return{s:function(){a=a.call(e)},n:function(){var f=a.next();return r=f.done,f},e:function(f){m=!0,o=f},f:function(){try{r||a.return==null||a.return()}finally{if(m)throw o}}}}function pc(e,t){if(e){if(typeof e=="string")return Zn(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?Zn(e,t):void 0}}function Zn(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}function _a(e){return!!(e.top||e.left)}function Da(e){var t,a,n,s=e.target,o=e.input,r=e.source,m=e.findEntry,c=e.timeSinceLastFrame,f=e.available,u=f===void 0?{top:!0,left:!0}:f;if(!_a(u)||!s)return u;var p=s.closest(Zi);if(!p)return u;var h=m(p);if(!h)return u;function d(){var x;return Da({target:(x=p==null?void 0:p.parentElement)!==null&&x!==void 0?x:null,findEntry:m,source:r,timeSinceLastFrame:c,input:o,available:u})}var v={input:o,source:r,element:p};if(h.canScroll&&!h.canScroll(v))return d();var y=xa(p),w=Ta((t=h.getConfiguration)===null||t===void 0?void 0:t.call(h,v)),S=(a=(n=h.getAllowedAxis)===null||n===void 0?void 0:n.call(h,v))!==null&&a!==void 0?a:"all",b=Ea({element:p,engagement:y,input:o,timeSinceLastFrame:c,allowedAxis:S,config:w}),C={top:0,left:0};return u.top&&b.top!==0&&(C.top=b.top,u.top=!1),u.left&&b.left!==0&&(C.left=b.left,u.left=!1),(C.top!==0||C.left!==0)&&p.scrollBy(C),d()}function mc(e){var t=e.input,a=e.timeSinceLastFrame,n=e.available,s=e.source,o=e.entries,r=document.documentElement,m={input:t,source:s,element:r},c=fc(o),f;try{for(c.s();!(f=c.n()).done;){var u,p,h,d=f.value;if(!(d.canScroll&&!d.canScroll(m))){var v=xa(r),y=Ta((u=d.getConfiguration)===null||u===void 0?void 0:u.call(d,m)),w=(p=(h=d.getAllowedAxis)===null||h===void 0?void 0:h.call(d,m))!==null&&p!==void 0?p:"all",S=Ea({element:r,engagement:v,input:t,config:y,allowedAxis:w,getRect:function(x){return DOMRect.fromRect({y:0,x:0,width:x.clientWidth,height:x.clientHeight})},timeSinceLastFrame:a}),b={top:n.top?S.top:0,left:n.left?S.left:0};(b.top!==0||b.left!==0)&&r.scrollBy(b);break}}}catch(C){c.e(C)}finally{c.f()}}function vc(e){var t=e.input,a=e.findEntry,n=e.timeSinceLastFrame,s=e.source,o=e.getWindowScrollEntries,r=e.underUsersPointer,m=Da({target:r,timeSinceLastFrame:n,input:t,source:s,findEntry:a});_a(m)&&mc({input:t,source:s,entries:o(),timeSinceLastFrame:n,available:m})}function ea(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),a.push.apply(a,n)}return a}function gc(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?ea(Object(a),!0).forEach(function(n){Ne(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):ea(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}function yc(e){var t=e.monitor,a=new Map,n=new Set;function s(f){return a.set(f.element,f),tt(ec(f.element),function(){return a.delete(f.element)})}function o(){var f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},u=gc({},f);return n.add(u),function(){return n.delete(u)}}function r(f){var u;return(u=a.get(f))!==null&&u!==void 0?u:null}function m(){return Array.from(n)}function c(f){var u=f.latestArgs,p=f.underUsersPointer,h=f.timeSinceLastFrame;vc({input:u.location.current.input,source:u.source,findEntry:r,underUsersPointer:p,timeSinceLastFrame:h,getWindowScrollEntries:m})}return Xi(t).onFrame(c),{autoScroll:s,autoScrollWindow:o}}var hc=yc({monitor:Tn}),bc=hc.autoScroll;function ta(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),a.push.apply(a,n)}return a}function na(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?ta(Object(a),!0).forEach(function(n){Ne(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):ta(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}var wc={top:function(t,a){return Math.abs(a.y-t.top)},right:function(t,a){return Math.abs(t.right-a.x)},bottom:function(t,a){return Math.abs(t.bottom-a.y)},left:function(t,a){return Math.abs(a.x-t.left)}},Ia=Symbol("closestEdge");function Sc(e,t){var a,n,s=t.element,o=t.input,r=t.allowedEdges,m={x:o.clientX,y:o.clientY},c=s.getBoundingClientRect(),f=r.map(function(p){return{edge:p,value:wc[p](c,m)}}),u=(a=(n=f.sort(function(p,h){return p.value-h.value})[0])===null||n===void 0?void 0:n.edge)!==null&&a!==void 0?a:null;return na(na({},e),{},Ne({},Ia,u))}function Aa(e){var t;return(t=e[Ia])!==null&&t!==void 0?t:null}function xc(e){var t=e.startIndex,a=e.closestEdgeOfTarget,n=e.indexOfTarget;if(t===-1||n===-1||t===n)return t;if(a==null)return n;var s=a==="right",o=t<n;return o?s?n:n-1:s?n+1:n}function Tc(e){var t=e.element,a=e.input;return function(n){var s=n.container,o=t.getBoundingClientRect(),r=s.getBoundingClientRect(),m=Math.min(a.clientX-o.x,r.width),c=Math.min(a.clientY-o.y,r.height);return{x:m,y:c}}}function Cc(){return{x:0,y:0}}function Ec(e){var t=e.render,a=e.nativeSetDragImage,n=e.getOffset,s=n===void 0?Cc:n,o=document.createElement("div");Object.assign(o.style,{position:"fixed",top:0,left:0,zIndex:ha,pointerEvents:"none"}),document.body.append(o);var r=t({container:o});queueMicrotask(function(){var f=s({container:o});if(It()){var u=o.getBoundingClientRect();if(u.width===0)return;o.style.left="-".concat(u.width-1e-4,"px")}a==null||a(o,f.x,f.y)});function m(){c(),r==null||r(),document.body.removeChild(o)}var c=Tn({onDragStart:m,onDrop:m})}const _c={class:"bg-background w-44 max-w-44 text-foreground rounded-md flex items-center gap-2 text-sm font-medium h-7 px-3 py-1.5"},Dc=se({__name:"TabViewItemPreview",props:{icon:{},name:{}},setup(e){return(t,a)=>(D(),U("div",_c,ne(t.name),1))}}),Ic={class:"truncate"},Ac=se({__name:"TabViewItem",props:{tab:{},isActive:{type:Boolean},selectTab:{type:Function},closeTab:{type:Function},onRightClickItem:{type:Function}},setup(e){const t=e,a=ke(),n=ke(),s=q(!1),o=q(!1),r=q(),m=q(!1);return dn(c=>{const f=Wt(a),u=Wt(n);if(!f||!u)return;const p=tt(Wi({element:f,getInitialData:()=>t.tab,onDragStart:h=>{s.value=!0},onDrop:()=>{s.value=!1,t.selectTab(t.tab.id)},onGenerateDragPreview:({location:h,nativeSetDragImage:d})=>{Ec({nativeSetDragImage:d,getOffset:Tc({element:f,input:h.current.input}),render({container:v}){return Bt(aa(Dc,{icon:t.tab.icon,name:t.tab.name},t.tab.name),v),()=>{Bt(null,v)}}})}}),Gi({element:u,getData:({input:h,element:d})=>{const v={id:t.tab.id};return Sc(v,{element:d,input:h,allowedEdges:["left","right"]})},canDrop:({source:h})=>!0,onDrag:({self:h,source:d,location:v})=>{const y=Aa(h.data);y&&(r.value=y)},onDragEnter:({self:h,source:d})=>{var y,w;const v=((y=h.data)==null?void 0:y.id)!==d.data.id;t.tab.id===((w=h.data)==null?void 0:w.id)&&v&&(m.value=!0)},onDragLeave:()=>{o.value=!1,m.value=!1},onDrop:({location:h})=>{o.value=!1,m.value=!1},getIsSticky:()=>!1}));c(()=>p())}),(c,f)=>{const u=me,p=Ie,h=Ae,d=De,v=Re;return D(),U("div",{class:"relative",onContextmenu:f[2]||(f[2]=_e(()=>{c.onRightClickItem(c.tab)},["right"])),ref_key:"outerElementRef",ref:n},[_("div",{class:he(["pb-[1px]",["border rounded-t-md transition-all duration-300 ease-out",c.isActive?"bg-background shadow-xl border-b-transparent rounded-b-none":"border-transparent"]])},[i(v,{ref_key:"innerElementRef",ref:a,variant:"ghost",size:"sm",class:he(["h-7! max-w-44 justify-start! font-normal p-2! hover:[&>div]:opacity-100 border border-transparent",c.isActive?"bg-background rounded-b-none hover:bg-transparent ":"hover:bg-primary/10 hover:border-border",s.value?"bg-primary/5":""]),onClick:f[1]||(f[1]=_e(y=>c.selectTab(c.tab.id),["left"])),id:c.tab.id},{default:g(()=>[i(u,{name:c.tab.icon,class:he(l(on)("size-4 min-w-4",c.tab.iconClass))},null,8,["name","class"]),i(d,{id:c.tab.id},{default:g(()=>[i(p,{"as-child":""},{default:g(()=>[_("div",Ic,ne(c.tab.name),1)]),_:1}),i(h,{side:"bottom"},{default:g(()=>[_("p",null,ne(c.tab.name),1)]),_:1})]),_:1},8,["id"]),_("div",{class:"hover:bg-accent p-0.5 rounded-full opacity-0",onClick:f[0]||(f[0]=_e(()=>c.closeTab(c.tab.id),["stop"]))},[i(l(po),{class:"size-3 stroke-[2.5]!"})])]),_:1},8,["class","id"])],2),m.value&&r.value?(D(),U("div",{key:0,class:"absolute h-7 w-0.5 top-0 rounded-md bg-accent-foreground",style:Ve({[r.value==="left"?"left":"right"]:"0px"})},null,4)):re("",!0)],544)}}}),Rc={class:"flex items-end"},$c=se({__name:"TabViews",setup(e){const t=un(),{tabViews:a}=pe(t),n=ke(),s=q(!1),o=q(),r=B(()=>{if(!o.value)return!1;const m=a.value.length,c=a.value.findIndex(f=>{var u;return f.id===((u=o.value)==null?void 0:u.id)});return m>c+1});return dn(m=>{const c=Wt(n);if(!c)return;const f=tt(Tn({onDragStart(u){s.value=!0},onDrop(u){s.value=!1;const{location:p,source:h}=u;if(!p.current.dropTargets.length)return;const d=h.data.id,v=p.current.dropTargets[0],y=v.data.id,w=Aa(v.data);if(!w)return;const S=a.value.findIndex(x=>x.id===d),b=a.value.findIndex(x=>x.id===y),C=xc({startIndex:S,indexOfTarget:b,closestEdgeOfTarget:w});t.moveTabTo(S,C)}}),bc({element:c}));m(()=>{f()})}),(m,c)=>{const f=en("auto-animate");return D(),U("div",{class:he(["w-full flex items-end h-full space-x-2 mx-1 -mb-0.5 overflow-x-auto hidden-scroll-container relative",l(s)?"bg-purple-50":""]),ref_key:"elementRef",ref:n},[i(l(ho),null,{default:g(()=>[i(l(bo),null,{default:g(()=>[He((D(),U("div",Rc,[(D(!0),U(Te,null,$e(l(a),u=>{var p;return D(),te(Ac,{key:u.id,tab:u,isActive:u.id===((p=l(t).activeTab)==null?void 0:p.id),selectTab:l(t).selectTab,closeTab:l(t).closeTab,onRightClickItem:()=>{o.value=u}},null,8,["tab","isActive","selectTab","closeTab","onRightClickItem"])}),128))])),[[f,{duration:120}]]),l(o)?(D(),te(l(wo),{key:0,hideWhenDetached:"",class:"w-56"},{default:g(()=>[i(l(Nt),{onSelect:c[0]||(c[0]=u=>l(t).closeTab(l(o).id))},{default:g(()=>[c[4]||(c[4]=F(" Close ")),i(l(Lt),null,{default:g(()=>c[3]||(c[3]=[F("⌘W")])),_:1})]),_:1}),i(l(Nt),{onSelect:c[1]||(c[1]=u=>l(t).closeOtherTab(l(o).id))},{default:g(()=>[c[6]||(c[6]=F(" Close other ")),i(l(Lt),null,{default:g(()=>c[5]||(c[5]=[F("⌘AO")])),_:1})]),_:1}),i(l(Nt),{disabled:!l(r),onSelect:c[2]||(c[2]=u=>l(t).closeToTheRight(l(o).id))},{default:g(()=>[c[8]||(c[8]=F(" Close to the right ")),i(l(Lt),null,{default:g(()=>c[7]||(c[7]=[F("⌘AX")])),_:1})]),_:1},8,["disabled"])]),_:1})):re("",!0)]),_:1})]),_:1})],2)}}}),Oc={class:"flex justify-between items-center h-full"},Nc={key:0,class:"vitrual-light-trafic-button"},kc=se({__name:"TabViewContainer",props:{primarySideBarWidth:{}},setup(e){const t=e,a=cn(),n=ct(),{isPrimarySidebarCollapsed:s,isSecondSidebarCollapsed:o}=pe(n),r=B(()=>Oo()),m=B(()=>No()),c=B(()=>n.layoutSize[0]?`${t.primarySideBarWidth}px`:"2.25rem"),f=B(()=>!a.meta.notAllowRightPanel);return(u,p)=>{const h=me,d=Re,v=Ie,y=Ae,w=De;return D(),U("div",{class:he(["w-screen h-9 select-none border-b pr-2 electron-drag-region bg-sidebar-accent/50!",l(m)&&l(s)?"pl-[4.5rem]":"",l(r)&&l(s)?"pl-[6rem]":"",l(r)&&"h-10.5 header-tab-view-pwa"])},[_("div",Oc,[_("div",{class:"flex items-center gap-1 h-full px-1",style:Ve({minWidth:l(c),justifyContent:l(s)?"center":"space-between"})},[l(r)&&!l(s)?(D(),U("div",Nc)):re("",!0),l(s)?re("",!0):(D(),U("div",{key:1,class:he([l(m)?"pl-[4.5rem]":"","flex justify-center w-full"])},[i(l(jo))],2)),i(w,null,{default:g(()=>[i(v,{"as-child":""},{default:g(()=>[i(d,{variant:"ghost",size:"iconSm",onClick:p[0]||(p[0]=S=>l(n).onToggleActivityBarPanel())},{default:g(()=>[l(s)?(D(),te(h,{key:0,name:"hugeicons:sidebar-left",class:"size-5!"})):(D(),te(h,{key:1,name:"hugeicons:sidebar-left-01",class:"size-5!"}))]),_:1})]),_:1}),i(y,null,{default:g(()=>p[2]||(p[2]=[F(" Toggle Sidebar ")])),_:1})]),_:1})],4),i($c),i(w,null,{default:g(()=>[i(v,{"as-child":""},{default:g(()=>[l(f)?(D(),te(d,{key:0,variant:"ghost",size:"iconSm",onClick:p[1]||(p[1]=S=>l(n).onToggleSecondSidebar())},{default:g(()=>[l(o)?(D(),te(h,{key:0,name:"hugeicons:sidebar-right",class:"size-5!"})):(D(),te(h,{key:1,name:"hugeicons:sidebar-right-01",class:"size-5!"}))]),_:1})):re("",!0)]),_:1}),i(y,null,{default:g(()=>p[3]||(p[3]=[F(" Toggle Sidebar ")])),_:1})]),_:1})])],2)}}}),Lc={class:"h-full flex overflow-y-auto w-screen max-w-screen overflow-x-hidden"},Pc={class:"overflow-y-auto w-full h-full"},Fc={class:"flex flex-col overflow-y-auto w-full h-full"},Mc={class:"h-full"},su=se({__name:"default",setup(e){const t=cn(),a=je("primarySideBarPanel"),{width:n}=mo(a),s=ct(),{layoutSize:o,isPrimarySidebarCollapsed:r,bodySize:m}=pe(s),{chatUiVars:c}=vo(),f=B(()=>!t.meta.notAllowBottomPanel),u=B(()=>!t.meta.notAllowRightPanel);return go([{key:"meta+shift+b",callback:()=>{u.value&&s.onToggleSecondSidebar()}},{key:"meta+b",callback:()=>{s.onToggleActivityBarPanel()}},{key:"meta+j",callback:()=>{f.value&&s.onToggleBottomPanel()}}]),(p,h)=>{const d=$a,v=Oa,y=Na,w=en("auto-animate");return D(),te(y,{direction:"horizontal",id:"default-layout-group-1",onLayout:h[1]||(h[1]=S=>l(s).onResizeLayout(S))},{default:g(()=>[_("div",{class:"h-screen w-screen flex flex-col flex-1 max-h-screen overflow-y-auto",style:Ve(l(c))},[i(l(kc),{primarySideBarWidth:l(n)},null,8,["primarySideBarWidth"]),He((D(),U("div",Lc,[l(r)?(D(),te(l(Vo),{key:0})):re("",!0),i(d,{"min-size":10,"max-size":40,"default-size":l(o)[0],"collapsed-size":0,ref:"primarySideBarPanel",collapsible:"",id:"default-layout-group-1-panel-1",key:"primarySideBarPanel",class:"bg-sidebar/50 dark:bg-sidebar"},{default:g(()=>[i(l(Ys))]),_:1},8,["default-size"]),i(v,{class:"[&[data-state=hover]]:bg-primary/30! [&[data-state=drag]]:bg-primary/20!",id:"default-layout-group-1-resize-1","with-handle":""}),i(d,{id:"default-layout-group-1-panel-2",key:"contentPanel"},{default:g(()=>[_("div",Pc,[i(y,{id:"default-layout-body-group",direction:"vertical",modelValue:l(m),"onUpdate:modelValue":h[0]||(h[0]=S=>Ee(m)?m.value=S:null),onLayout:l(s).onResizeBody},{default:g(()=>[i(d,{id:"default-layout-body-group-panel-1",key:"default-layout-body-group-panel-1"},{default:g(()=>[_("div",Fc,[_("div",Mc,[_t(p.$slots,"default")])])]),_:3}),He(i(v,{class:"[&[data-state=hover]]:bg-primary/30! [&[data-state=drag]]:bg-primary/20!","with-handle":""},null,512),[[yt,l(f)]]),He(i(d,{"min-size":10,"max-size":70,"default-size":l(m)[1],"collapsed-size":0,collapsible:"",id:"default-layout-body-group-panel-2",key:"default-layout-body-group-panel-2"},{default:g(()=>h[2]||(h[2]=[_("div",{class:"flex flex-col flex-1 h-full p-1",id:"bottom-panel"},null,-1)])),_:1},8,["default-size"]),[[yt,l(f)]])]),_:3},8,["modelValue","onLayout"])])]),_:3}),He(i(v,{class:"[&[data-state=hover]]:bg-primary/30! [&[data-state=drag]]:bg-primary/20!",id:"default-layout-group-1-resize-2","with-handle":""},null,512),[[yt,l(u)]]),He(i(d,{id:"default-layout-group-1-panel-3","min-size":15,"max-size":40,"default-size":l(o)[2],"collapsed-size":0,collapsible:"",key:"secondarySideBarPanel",class:"bg-sidebar"},{default:g(()=>[i(l(Js))]),_:1},8,["default-size"]),[[yt,l(u)]])])),[[w,{duration:l(Ze)}]]),i(l(ri))],4)]),_:3})}}});export{su as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as
|
|
1
|
+
import{d as o,e8 as n,bj as d,br as u,b as s,g as c,n as m,j as p,W as b,o as f}from"./FyrDS92w.js";const V=o({__name:"Textarea",props:{class:{},defaultValue:{},modelValue:{}},emits:["update:modelValue"],setup(l,{emit:r}){const e=l,a=n(e,"modelValue",r,{passive:!0,defaultValue:e.defaultValue});return(v,t)=>d((f(),c("textarea",{"onUpdate:modelValue":t[0]||(t[0]=i=>b(a)?a.value=i:null),"data-slot":"textarea",class:m(s(p)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e.class))},null,2)),[[u,s(a)]])}});export{V as _};
|