orcaq 1.0.21 → 1.0.23
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/{CrgoNCm2.js → 0fpkWcbi.js} +2 -2
- package/.output/public/_nuxt/{DL3T5jYo.js → B6lwWVI5.js} +1 -1
- package/.output/public/_nuxt/BGEWnlhd.js +1 -0
- package/.output/public/_nuxt/BUePl0lK.js +1 -0
- package/.output/public/_nuxt/BWeOEh4Z.js +14 -0
- package/.output/public/_nuxt/BXECqniz.js +1 -0
- package/.output/public/_nuxt/BYa7Vkmx.js +1 -0
- package/.output/public/_nuxt/BeC_ewNB.js +47 -0
- package/.output/public/_nuxt/BeL_GfX-.js +39 -0
- package/.output/public/_nuxt/{CuBKbBH_.js → BkhEpKzy.js} +1 -1
- package/.output/public/_nuxt/{BH83_dXo.js → C26aAkUg.js} +1 -1
- package/.output/public/_nuxt/C81RYsqJ.js +26 -0
- package/.output/public/_nuxt/CFtLQlpa.js +1 -0
- package/.output/public/_nuxt/CHae0Jiv.js +1 -0
- package/.output/public/_nuxt/{9lJACZIQ.js → CJER2x4r.js} +1 -1
- package/.output/public/_nuxt/{ICwM1E4-.js → CYqdSIe6.js} +3 -3
- package/.output/public/_nuxt/CcN517Ci.js +1 -0
- package/.output/public/_nuxt/CfqyI4g1.js +4 -0
- package/.output/public/_nuxt/CnIhd9IM.js +9 -0
- package/.output/public/_nuxt/Co87DPdr.js +18 -0
- package/.output/public/_nuxt/{pAheHeBV.js → CouqeYue.js} +8 -8
- package/.output/public/_nuxt/Cv3wRRZy.js +31 -0
- package/.output/public/_nuxt/{DXV2HFBA.js → CvXDjqNF.js} +1 -1
- package/.output/public/_nuxt/D0LmHvgn.js +13 -0
- package/.output/public/_nuxt/{ivUnXl9B.js → D2Hot6Qz.js} +1 -1
- package/.output/public/_nuxt/D5XzVg8o.js +1 -0
- package/.output/public/_nuxt/{Bq3cyzOD.js → DCGzl5t1.js} +1 -1
- package/.output/public/_nuxt/DGE1UZv7.js +1 -0
- package/.output/public/_nuxt/{BNjPC06x.js → DNVnfTwM.js} +1 -1
- package/.output/public/_nuxt/DV-vuGJt.js +1 -0
- package/.output/public/_nuxt/DVwaLKvw.js +5 -0
- package/.output/public/_nuxt/{C2HlI1ss.js → DcIs4zDC.js} +1 -1
- package/.output/public/_nuxt/{Bh6RgYlO.js → DcoZ0u0V.js} +1 -1
- package/.output/public/_nuxt/Dduxqd2M.js +1 -0
- package/.output/public/_nuxt/DroUt-ok.js +1 -0
- package/.output/public/_nuxt/{D8vj6kFe.js → DyUmhpWC.js} +11 -11
- package/.output/public/_nuxt/JGp8ZHkv.js +257 -0
- package/.output/public/_nuxt/KoN09pZ5.js +1 -0
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/bbd2d18d-c265-48d2-a51b-1d563b817934.json +1 -0
- package/.output/public/_nuxt/cX_8SODe.js +1 -0
- package/.output/public/_nuxt/entry.SsrkN9_U.css +1 -0
- package/.output/public/_nuxt/{C25Tmn1m.js → jEcGO2vg.js} +1 -1
- package/.output/public/_nuxt/vt077W6w.js +1 -0
- package/.output/public/_nuxt/yruHU3cQ.js +1 -0
- package/.output/public/_nuxt/zeVrAOTr.js +8 -0
- package/.output/server/chunks/build/client.manifest.mjs +305 -296
- package/.output/server/chunks/build/client.manifest.mjs.map +1 -1
- package/.output/server/chunks/nitro/nitro.mjs +255 -241
- package/.output/server/node_modules/aws-ssl-profiles/lib/index.js +13 -0
- package/.output/server/node_modules/aws-ssl-profiles/lib/profiles/ca/defaults.js +2888 -0
- package/.output/server/node_modules/aws-ssl-profiles/lib/profiles/ca/proxies.js +111 -0
- package/.output/server/node_modules/aws-ssl-profiles/package.json +52 -0
- package/.output/server/node_modules/generate-function/index.js +181 -0
- package/.output/server/node_modules/generate-function/package.json +32 -0
- package/.output/server/node_modules/iconv-lite/encodings/dbcs-codec.js +597 -0
- package/.output/server/node_modules/iconv-lite/encodings/dbcs-data.js +188 -0
- package/.output/server/node_modules/iconv-lite/encodings/index.js +23 -0
- package/.output/server/node_modules/iconv-lite/encodings/internal.js +198 -0
- package/.output/server/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
- package/.output/server/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
- package/.output/server/node_modules/iconv-lite/encodings/sbcs-data.js +179 -0
- package/.output/server/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
- package/.output/server/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
- package/.output/server/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
- package/.output/server/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
- package/.output/server/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
- package/.output/server/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
- package/.output/server/node_modules/iconv-lite/encodings/tables/gbk-added.json +56 -0
- package/.output/server/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
- package/.output/server/node_modules/iconv-lite/encodings/utf16.js +197 -0
- package/.output/server/node_modules/iconv-lite/encodings/utf32.js +319 -0
- package/.output/server/node_modules/iconv-lite/encodings/utf7.js +290 -0
- package/.output/server/node_modules/iconv-lite/lib/bom-handling.js +52 -0
- package/.output/server/node_modules/iconv-lite/lib/index.js +180 -0
- package/.output/server/node_modules/iconv-lite/lib/streams.js +109 -0
- package/.output/server/node_modules/iconv-lite/package.json +44 -0
- package/.output/server/node_modules/is-property/is-property.js +5 -0
- package/.output/server/node_modules/is-property/package.json +36 -0
- package/.output/server/node_modules/long/package.json +58 -0
- package/.output/server/node_modules/long/umd/index.js +1622 -0
- package/.output/server/node_modules/long/umd/package.json +3 -0
- package/.output/server/node_modules/lru.min/lib/index.js +231 -0
- package/.output/server/node_modules/lru.min/package.json +87 -0
- package/.output/server/node_modules/mysql2/index.js +77 -0
- package/.output/server/node_modules/mysql2/lib/auth_41.js +95 -0
- package/.output/server/node_modules/mysql2/lib/auth_plugins/caching_sha2_password.js +108 -0
- package/.output/server/node_modules/mysql2/lib/auth_plugins/index.js +8 -0
- package/.output/server/node_modules/mysql2/lib/auth_plugins/mysql_clear_password.js +17 -0
- package/.output/server/node_modules/mysql2/lib/auth_plugins/mysql_native_password.js +34 -0
- package/.output/server/node_modules/mysql2/lib/auth_plugins/sha256_password.js +68 -0
- package/.output/server/node_modules/mysql2/lib/base/connection.js +978 -0
- package/.output/server/node_modules/mysql2/lib/base/pool.js +237 -0
- package/.output/server/node_modules/mysql2/lib/base/pool_connection.js +70 -0
- package/.output/server/node_modules/mysql2/lib/commands/auth_switch.js +111 -0
- package/.output/server/node_modules/mysql2/lib/commands/binlog_dump.js +109 -0
- package/.output/server/node_modules/mysql2/lib/commands/change_user.js +68 -0
- package/.output/server/node_modules/mysql2/lib/commands/client_handshake.js +241 -0
- package/.output/server/node_modules/mysql2/lib/commands/close_statement.js +18 -0
- package/.output/server/node_modules/mysql2/lib/commands/command.js +54 -0
- package/.output/server/node_modules/mysql2/lib/commands/execute.js +112 -0
- package/.output/server/node_modules/mysql2/lib/commands/index.js +27 -0
- package/.output/server/node_modules/mysql2/lib/commands/ping.js +36 -0
- package/.output/server/node_modules/mysql2/lib/commands/prepare.js +143 -0
- package/.output/server/node_modules/mysql2/lib/commands/query.js +366 -0
- package/.output/server/node_modules/mysql2/lib/commands/quit.js +29 -0
- package/.output/server/node_modules/mysql2/lib/commands/register_slave.js +27 -0
- package/.output/server/node_modules/mysql2/lib/commands/server_handshake.js +203 -0
- package/.output/server/node_modules/mysql2/lib/compressed_protocol.js +127 -0
- package/.output/server/node_modules/mysql2/lib/connection.js +12 -0
- package/.output/server/node_modules/mysql2/lib/connection_config.js +294 -0
- package/.output/server/node_modules/mysql2/lib/constants/charset_encodings.js +316 -0
- package/.output/server/node_modules/mysql2/lib/constants/charsets.js +317 -0
- package/.output/server/node_modules/mysql2/lib/constants/client.js +39 -0
- package/.output/server/node_modules/mysql2/lib/constants/commands.js +36 -0
- package/.output/server/node_modules/mysql2/lib/constants/cursor.js +8 -0
- package/.output/server/node_modules/mysql2/lib/constants/encoding_charset.js +50 -0
- package/.output/server/node_modules/mysql2/lib/constants/errors.js +3973 -0
- package/.output/server/node_modules/mysql2/lib/constants/field_flags.js +20 -0
- package/.output/server/node_modules/mysql2/lib/constants/server_status.js +44 -0
- package/.output/server/node_modules/mysql2/lib/constants/session_track.js +11 -0
- package/.output/server/node_modules/mysql2/lib/constants/ssl_profiles.js +11 -0
- package/.output/server/node_modules/mysql2/lib/constants/types.js +64 -0
- package/.output/server/node_modules/mysql2/lib/create_connection.js +10 -0
- package/.output/server/node_modules/mysql2/lib/create_pool.js +10 -0
- package/.output/server/node_modules/mysql2/lib/create_pool_cluster.js +9 -0
- package/.output/server/node_modules/mysql2/lib/helpers.js +86 -0
- package/.output/server/node_modules/mysql2/lib/packet_parser.js +195 -0
- package/.output/server/node_modules/mysql2/lib/packets/auth_next_factor.js +35 -0
- package/.output/server/node_modules/mysql2/lib/packets/auth_switch_request.js +38 -0
- package/.output/server/node_modules/mysql2/lib/packets/auth_switch_request_more_data.js +33 -0
- package/.output/server/node_modules/mysql2/lib/packets/auth_switch_response.js +30 -0
- package/.output/server/node_modules/mysql2/lib/packets/binary_row.js +95 -0
- package/.output/server/node_modules/mysql2/lib/packets/binlog_dump.js +33 -0
- package/.output/server/node_modules/mysql2/lib/packets/binlog_query_statusvars.js +115 -0
- package/.output/server/node_modules/mysql2/lib/packets/change_user.js +97 -0
- package/.output/server/node_modules/mysql2/lib/packets/close_statement.js +21 -0
- package/.output/server/node_modules/mysql2/lib/packets/column_definition.js +291 -0
- package/.output/server/node_modules/mysql2/lib/packets/execute.js +214 -0
- package/.output/server/node_modules/mysql2/lib/packets/handshake.js +112 -0
- package/.output/server/node_modules/mysql2/lib/packets/handshake_response.js +144 -0
- package/.output/server/node_modules/mysql2/lib/packets/index.js +152 -0
- package/.output/server/node_modules/mysql2/lib/packets/packet.js +931 -0
- package/.output/server/node_modules/mysql2/lib/packets/prepare_statement.js +27 -0
- package/.output/server/node_modules/mysql2/lib/packets/prepared_statement_header.js +16 -0
- package/.output/server/node_modules/mysql2/lib/packets/query.js +27 -0
- package/.output/server/node_modules/mysql2/lib/packets/register_slave.js +46 -0
- package/.output/server/node_modules/mysql2/lib/packets/resultset_header.js +124 -0
- package/.output/server/node_modules/mysql2/lib/packets/ssl_request.js +25 -0
- package/.output/server/node_modules/mysql2/lib/packets/text_row.js +47 -0
- package/.output/server/node_modules/mysql2/lib/parsers/binary_parser.js +235 -0
- package/.output/server/node_modules/mysql2/lib/parsers/parser_cache.js +68 -0
- package/.output/server/node_modules/mysql2/lib/parsers/static_binary_parser.js +213 -0
- package/.output/server/node_modules/mysql2/lib/parsers/static_text_parser.js +152 -0
- package/.output/server/node_modules/mysql2/lib/parsers/string.js +50 -0
- package/.output/server/node_modules/mysql2/lib/parsers/text_parser.js +214 -0
- package/.output/server/node_modules/mysql2/lib/pool.js +12 -0
- package/.output/server/node_modules/mysql2/lib/pool_cluster.js +369 -0
- package/.output/server/node_modules/mysql2/lib/pool_config.js +30 -0
- package/.output/server/node_modules/mysql2/lib/pool_connection.js +12 -0
- package/.output/server/node_modules/mysql2/lib/promise/connection.js +222 -0
- package/.output/server/node_modules/mysql2/lib/promise/inherit_events.js +27 -0
- package/.output/server/node_modules/mysql2/lib/promise/make_done_cb.js +19 -0
- package/.output/server/node_modules/mysql2/lib/promise/pool.js +112 -0
- package/.output/server/node_modules/mysql2/lib/promise/pool_cluster.js +54 -0
- package/.output/server/node_modules/mysql2/lib/promise/pool_connection.js +19 -0
- package/.output/server/node_modules/mysql2/lib/promise/prepared_statement_info.js +32 -0
- package/.output/server/node_modules/mysql2/lib/server.js +37 -0
- package/.output/server/node_modules/mysql2/package.json +80 -0
- package/.output/server/node_modules/mysql2/promise.js +202 -0
- package/.output/server/node_modules/named-placeholders/index.js +179 -0
- package/.output/server/node_modules/named-placeholders/package.json +36 -0
- package/.output/server/node_modules/safer-buffer/package.json +34 -0
- package/.output/server/node_modules/safer-buffer/safer.js +77 -0
- package/.output/server/node_modules/seq-queue/index.js +1 -0
- package/.output/server/node_modules/seq-queue/lib/seq-queue.js +199 -0
- package/.output/server/node_modules/seq-queue/package.json +16 -0
- package/.output/server/node_modules/sqlstring/index.js +1 -0
- package/.output/server/node_modules/sqlstring/lib/SqlString.js +237 -0
- package/.output/server/node_modules/sqlstring/package.json +47 -0
- package/.output/server/package.json +12 -1
- package/package.json +1 -1
- package/.output/public/_nuxt/8qASMGdV.js +0 -1
- package/.output/public/_nuxt/B2DnNiWd.js +0 -1
- package/.output/public/_nuxt/BIKqrFbQ.js +0 -1
- package/.output/public/_nuxt/BPQ-Pz1w.js +0 -39
- package/.output/public/_nuxt/BRpgKkVT.js +0 -51
- package/.output/public/_nuxt/BTCLPbPY.js +0 -4
- package/.output/public/_nuxt/BUV-RarV.js +0 -1
- package/.output/public/_nuxt/Bt9sU68B.js +0 -9
- package/.output/public/_nuxt/BwpH2ZxJ.js +0 -1
- package/.output/public/_nuxt/CU3ZV9iV.js +0 -1
- package/.output/public/_nuxt/CbcyysXi.js +0 -1
- package/.output/public/_nuxt/CepyvMhE.js +0 -1
- package/.output/public/_nuxt/CulD8qYQ.js +0 -193
- package/.output/public/_nuxt/CylkLpwm.js +0 -1
- package/.output/public/_nuxt/D-bWLYHw.js +0 -1
- package/.output/public/_nuxt/D-zecHND.js +0 -1
- package/.output/public/_nuxt/DIETYtCL.js +0 -1
- package/.output/public/_nuxt/DJ4vUzxS.js +0 -1
- package/.output/public/_nuxt/DK-itzXx.js +0 -8
- package/.output/public/_nuxt/Dh2zppOR.js +0 -1
- package/.output/public/_nuxt/DlmSeCnw.js +0 -5
- package/.output/public/_nuxt/DswTpYG4.js +0 -1
- package/.output/public/_nuxt/G830WtVn.js +0 -1
- package/.output/public/_nuxt/QZbJy9YW.js +0 -31
- package/.output/public/_nuxt/UXhX8z2W.js +0 -1
- package/.output/public/_nuxt/builds/meta/03cede5c-c45c-41b3-ac1a-73756bb8cff0.json +0 -1
- package/.output/public/_nuxt/entry.GqPNPe1e.css +0 -1
- package/.output/public/_nuxt/s5fCn4j5.js +0 -1
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import{aQ as dt,aR as mt,h as Zt,d as W,u as at,B as Hn,J as T,aS as Gn,a as k,o as y,w as v,r as Ie,A as J,b as e,aT as Jn,m as De,H as Ue,i as en,W as tn,P as lt,G as m,aU as Yn,C as Fe,aV as Xn,aW as Zn,f as M,az as ve,a7 as eo,K as pt,ad as to,Q as Me,y as nn,M as D,N as Re,O as S,X as Z,U as he,V as Oe,R as fe,aF as Et,aX as rt,a6 as ke,aY as Pt,aZ as no,am as ht,a0 as on,a8 as sn,a9 as oo,T as P,ae as an,ab as so,S as Te,a1 as ln,a_ as Ne,a$ as Ae,ak as rn,al as ao,E as $e,aa as je,j as Se,b0 as Ke,aB as tt,b1 as lo,t as ro,b2 as io,aq as vt,b3 as gt,ag as yt,ah as bt,aj as wt,ai as un,af as Ct,b4 as Dt,b5 as uo,aG as St,aE as cn,b6 as co,aP as dn,b7 as mo,aM as _t,b8 as mn,b9 as Mt,aw as fo,au as po,av as Bt,ba as ho,bb as vo,bc as go,bd as Vt,aH as yo,aI as bo,l as wo,be as Co,bf as zt,ao as So}from"./JGp8ZHkv.js";import{i as fn,m as _o,h as xo,g as pn,f as hn,e as Lt,j as xt}from"./yruHU3cQ.js";import{u as nt}from"./CFtLQlpa.js";import{u as qe,c as Ut}from"./DcIs4zDC.js";import{x as vn,y as gn,H as Le,D as Ro,z as Oo,A as To,B as ko,C as No}from"./B6lwWVI5.js";import{E as Rt}from"./BGEWnlhd.js";import{C as ot,f as ft,e as $o,s as Io,o as Ao,a as Fo,E as ut,g as Eo,O as Qe}from"./DcoZ0u0V.js";import{a as Po,_ as yn}from"./BeL_GfX-.js";import{_ as bn,b as wn}from"./CfqyI4g1.js";import{d as Cn,t as Sn,e as Do,f as _n,g as xn,_ as Rn,h as Mo}from"./CnIhd9IM.js";import{_ as On}from"./DCGzl5t1.js";import{k as Bo,m as Vo,Z as zo,p as Lo,o as Tn,s as Uo}from"./C26aAkUg.js";import{b as jo,C as j,c as jt,d as ct,e as Kt,g as qt,_ as Qt,h as Ko,i as qo,f as Qo,p as Wo,j as Ho}from"./DyUmhpWC.js";import{_ as Go}from"./BkhEpKzy.js";import{_ as Ot}from"./D2Hot6Qz.js";import{_ as Jo}from"./DlAUqK2U.js";import{f as Wt}from"./CJER2x4r.js";import{u as Yo,a as Xo,F as Zo,b as es,_ as ts}from"./DV-vuGJt.js";import"./0fpkWcbi.js";/* empty css */import"./DUsuhY9i.js";import"./CYqdSIe6.js";import"./jEcGO2vg.js";function Ht(i,r){return dt(i)?!1:Array.isArray(i)?i.some(n=>mt(n,r)):mt(i,r)}const[ns,kl]=Zt("CheckboxGroupRoot");function st(i){return i==="indeterminate"}function kn(i){return st(i)?"indeterminate":i?"checked":"unchecked"}const[os,ss]=Zt("CheckboxRoot"),as=W({inheritAttrs:!1,__name:"CheckboxRoot",props:{defaultValue:{type:[Boolean,String]},modelValue:{type:[Boolean,String,null],default:void 0},disabled:{type:Boolean},value:{default:"on"},id:{},asChild:{type:Boolean},as:{default:"button"},name:{},required:{type:Boolean}},emits:["update:modelValue"],setup(i,{emit:r}){const n=i,t=r,{forwardRef:o,currentElement:l}=at(),s=ns(null),a=Hn(n,"modelValue",t,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),c=T(()=>(s==null?void 0:s.disabled.value)||n.disabled),d=T(()=>dt(s==null?void 0:s.modelValue.value)?a.value==="indeterminate"?"indeterminate":a.value:Ht(s.modelValue.value,n.value));function u(){if(dt(s==null?void 0:s.modelValue.value))a.value=st(a.value)?!0:!a.value;else{const f=[...s.modelValue.value||[]];if(Ht(f,n.value)){const w=f.findIndex(_=>mt(_,n.value));f.splice(w,1)}else f.push(n.value);s.modelValue.value=f}}const p=Gn(l),h=T(()=>{var f;return n.id&&l.value?(f=document.querySelector(`[for="${n.id}"]`))==null?void 0:f.innerText:void 0});return ss({disabled:c,state:d}),(f,w)=>{var _,g;return y(),k(tn((_=e(s))!=null&&_.rovingFocus.value?e(bn):e(lt)),De(f.$attrs,{id:f.id,ref:e(o),role:"checkbox","as-child":f.asChild,as:f.as,type:f.as==="button"?"button":void 0,"aria-checked":e(st)(d.value)?"mixed":d.value,"aria-required":f.required,"aria-label":f.$attrs["aria-label"]||h.value,"data-state":e(kn)(d.value),"data-disabled":c.value?"":void 0,disabled:c.value,focusable:(g=e(s))!=null&&g.rovingFocus.value?!c.value:void 0,onKeydown:Ue(en(()=>{},["prevent"]),["enter"]),onClick:u}),{default:v(()=>[Ie(f.$slots,"default",{modelValue:e(a),state:d.value}),e(p)&&f.name&&!e(s)?(y(),k(e(Jn),{key:0,type:"checkbox",checked:!!d.value,name:f.name,value:f.value,disabled:c.value,required:f.required},null,8,["checked","name","value","disabled","required"])):J("",!0)]),_:3},16,["id","as-child","as","type","aria-checked","aria-required","aria-label","data-state","data-disabled","disabled","focusable","onKeydown"])}}}),ls=W({__name:"CheckboxIndicator",props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{default:"span"}},setup(i){const{forwardRef:r}=at(),n=os();return(t,o)=>(y(),k(e(Yn),{present:t.forceMount||e(st)(e(n).state.value)||e(n).state.value===!0},{default:v(()=>[m(e(lt),De({ref:e(r),"data-state":e(kn)(e(n).state.value),"data-disabled":e(n).disabled.value?"":void 0,style:{pointerEvents:"none"},"as-child":t.asChild,as:t.as},t.$attrs),{default:v(()=>[Ie(t.$slots,"default")]),_:3},16,["data-state","data-disabled","as-child","as"])]),_:3},8,["present"]))}}),rs=W({__name:"TabsList",props:{loop:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},setup(i){const r=i,{loop:n}=Fe(r),{forwardRef:t,currentElement:o}=at(),l=fn();return l.tabsList=o,(s,a)=>(y(),k(e(Go),{"as-child":"",orientation:e(l).orientation.value,dir:e(l).dir.value,loop:e(n)},{default:v(()=>[m(e(lt),{ref:e(t),role:"tablist","as-child":s.asChild,as:s.as,"aria-orientation":e(l).orientation.value},{default:v(()=>[Ie(s.$slots,"default")]),_:3},8,["as-child","as","aria-orientation"])]),_:3},8,["orientation","dir","loop"]))}}),is=W({__name:"TabsTrigger",props:{value:{},disabled:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:"button"}},setup(i){const r=i,{forwardRef:n}=at(),t=fn(),o=T(()=>_o(t.baseId,r.value)),l=T(()=>xo(t.baseId,r.value)),s=T(()=>r.value===t.modelValue.value);return(a,c)=>(y(),k(e(bn),{"as-child":"",focusable:!a.disabled,active:s.value},{default:v(()=>[m(e(lt),{id:o.value,ref:e(n),role:"tab",type:a.as==="button"?"button":void 0,as:a.as,"as-child":a.asChild,"aria-selected":s.value?"true":"false","aria-controls":l.value,"data-state":s.value?"active":"inactive",disabled:a.disabled,"data-disabled":a.disabled?"":void 0,"data-orientation":e(t).orientation.value,onMousedown:c[0]||(c[0]=en(d=>{!a.disabled&&d.ctrlKey===!1?e(t).changeModelValue(a.value):d.preventDefault()},["left"])),onKeydown:c[1]||(c[1]=Ue(d=>e(t).changeModelValue(a.value),["enter","space"])),onFocus:c[2]||(c[2]=()=>{const d=e(t).activationMode!=="manual";!s.value&&!a.disabled&&d&&e(t).changeModelValue(a.value)})},{default:v(()=>[Ie(a.$slots,"default")]),_:3},8,["id","type","as","as-child","aria-selected","aria-controls","data-state","disabled","data-disabled","data-orientation"])]),_:3},8,["focusable","active"]))}}),Nn=Xn("quick-query-logs",()=>{const i=Zn(),{connectionId:r}=Fe(i),n=M([]),t=({tableName:c,schemaName:d})=>n.value.filter(u=>u.tableName===c&&u.schemaName===d&&u.connectionId===r.value),o=async c=>{if(!r.value||!i.workspaceId){console.error("connectionId or schemaId not found");return}const d={...c,connectionId:r.value,workspaceId:i.workspaceId,createdAt:eo().toISOString(),id:qe()};await window.quickQueryLogsApi.create(d),n.value.push(d)},l=async({tableName:c,schemaName:d})=>{if(!r.value){console.error("connectionId or schemaId not found");return}await window.quickQueryLogsApi.delete({connectionId:r.value,tableName:c,schemaName:d}),await a(r.value)},s=async()=>{if(!r.value){console.error("connectionId not found");return}await window.quickQueryLogsApi.delete({connectionId:r.value}),await a(r.value)},a=async c=>{const d=await window.quickQueryLogsApi.getByContext({connectionId:c});n.value=d};return ve(()=>[r.value],async()=>{if(!r.value){console.error("connectionId not found");return}await a(r.value)},{deep:!0,immediate:!0}),{qqLogs:n,getLogsByTableId:t,deleteAllLogs:s,deleteLogsOfTable:l,createLog:o}},{persist:!1}),us=i=>{if(!Array.isArray(i)||i.length===0)return;let r="";i.forEach((n,t)=>{const o=Object.entries(n).map(([l,s])=>`${s}`).join(" ");r+=o,t<i.length-1&&(r+=`
|
|
2
|
+
`)}),navigator.clipboard.writeText(r).catch(n=>{console.error("Failed to copy: ",n)})},Tt=W({__name:"TabsList",props:{loop:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(i){const r=i,n=T(()=>{const{class:t,...o}=r;return o});return(t,o)=>(y(),k(e(rs),De({"data-slot":"tabs-list"},n.value,{class:e(pt)("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",r.class)}),{default:v(()=>[Ie(t.$slots,"default")]),_:3},16,["class"]))}}),kt=W({__name:"TabsTrigger",props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(i){const r=i,n=T(()=>{const{class:o,...l}=r;return l}),t=to(n);return(o,l)=>(y(),k(e(is),De({"data-slot":"tabs-trigger"},e(t),{class:e(pt)("data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",r.class)}),{default:v(()=>[Ie(o.$slots,"default")]),_:3},16,["class"]))}});function cs(i){return Vo(zo,i)}function ds(i){return Bo(Lo,i)}const ms=({tableName:i,schemaName:r})=>{var s;const{connectionStore:n}=Me(),{data:t,status:o}=nt("/api/get-table-size",{method:"POST",body:{tableName:i,dbConnectionString:(s=n.selectedConnection)==null?void 0:s.connectionString,schema:r},key:`table-size-${i}-${r}`},"$whYYgQ_DT6");return{tableSize:T(()=>t.value||{}),status:o}},fs={class:"gap-0 flex flex-col h-full w-full p-1"},ps={class:"flex flex-col gap-y-1"},hs={class:"flex items-center justify-between w-full"},vs={class:"text-xs opacity-75"},gs={class:"flex items-center justify-between gap-4"},ys={class:"text-xs opacity-75"},bs={class:"flex items-center justify-between gap-4"},ws={class:"text-xs opacity-75"},Cs=["onClick"],Ss={class:"flex justify-between text-xs w-full overflow-hidden"},_s=["title"],xs={class:"opacity-50 w-1/4 min-w-[100px] text-right"},Rs=W({__name:"QuickQueryTableSummary",props:{tableName:{},schemaName:{},columns:{},selectedColumnFieldId:{},handleSelectColumn:{type:Function},columnTypes:{}},emits:["resetSelectedCol"],setup(i,{emit:r}){const n=r,{tableSize:t}=ms({tableName:i.tableName,schemaName:i.schemaName}),o=T(()=>{var s;return(((s=i.columns)==null?void 0:s.map(a=>{var d;const c=(d=i.columnTypes)==null?void 0:d.find(u=>u.name===a.field&&u.name);return c?{...a,type:(c==null?void 0:c.type)||""}:a}))||[]).slice(1)}),l=s=>s==="timestamp without time zone"?"timestamp":s||"";return nn(s=>{s(()=>{i.selectedColumnFieldId!==void 0&&n("resetSelectedCol")})}),(s,a)=>{var p;const c=hn,d=pn,u=fe;return y(),D("div",fs,[m(d,{class:"py-1 rounded-md"},{default:v(()=>[m(c,{class:"px-2"},{default:v(()=>[S("div",ps,[S("div",hs,[a[0]||(a[0]=S("span",{class:"text-xs font-medium"},"Table Size:",-1)),S("span",vs,Z(e(t).tableSize),1)]),S("div",gs,[a[1]||(a[1]=S("span",{class:"text-xs font-medium"},"Data Size:",-1)),S("span",ys,Z(e(t).dataSize),1)]),S("div",bs,[a[2]||(a[2]=S("span",{class:"text-xs font-medium"},"Index Size:",-1)),S("span",ws,Z(e(t).indexSize),1)])])]),_:1})]),_:1}),m(d,{class:Re(e(Ut)("mt-1 py-2 px-1 h-full overflow-y-auto custom-scrollbar rounded-md",((p=s.columns)==null?void 0:p.length)===0&&"hidden"))},{default:v(()=>[m(c,{class:"px-0"},{default:v(()=>[(y(!0),D(he,null,Oe(e(o),h=>(y(),D("div",{key:h==null?void 0:h.field,class:Re(["cursor-pointer hover:bg-accent/50 rounded-sm",e(Ut)(s.selectedColumnFieldId===(h==null?void 0:h.field)&&"bg-accent/90")])},[S("div",{class:"flex items-center gap-2 justify-start p-1",onClick:f=>s.handleSelectColumn(h==null?void 0:h.field)},[m(u,{name:"lucide:columns-3",class:"size-4 min-w-3"}),S("div",Ss,[S("span",{class:"w-3/4 truncate max-w-[220px] overflow-hidden text-ellipsis whitespace-nowrap inline-block",title:h==null?void 0:h.headerName},Z((h==null?void 0:h.headerName)||""),9,_s),S("span",xs,Z(l(Array.isArray(h==null?void 0:h.type)?h==null?void 0:h.type.join(", "):h==null?void 0:h.type)),1)])],8,Cs)],2))),128))]),_:1})]),_:1},8,["class"])])}}});function Os({schemaName:i,tableName:r,pKeys:n,update:t,pKeyValue:o}){if(!r||!(n!=null&&n.length)||!t||!Object.keys(t).length)throw new Error("Invalid input: tableName, pKeys, and update object are required");const l=Object.entries(t).map(([c,d])=>d===null?`${c} = NULL`:typeof d=="string"?`${c} = '${d.replace(/'/g,"''")}'`:`${c} = ${d}`).join(", "),s=n.map(c=>`${c} = '${o[c]}'`).join(" AND ");return`UPDATE ${i}.${r} SET ${l} WHERE ${s}`}const $n=({tableName:i,connectionString:r,primaryKeys:n,columns:t,isPersist:o=!0,schemaName:l,workspaceId:s,connectionId:a,initFilters:c,initComposeWith:d})=>{const u=Nn(),p=M(!1),h=M(""),f=Et({limit:rt,offset:0}),w=M([]),_=Et({}),g=M(!1),C=M(ot.AND),z=T(()=>`${Pt} "${l}"."${i}"`),Y=T(()=>g.value?ft({columns:t.value,db:Rt.PG,filters:w.value,composeWith:C.value}):""),ae=T(()=>{let A="";_!=null&&_.columnName&&(_!=null&&_.order)?A=`ORDER BY "${_.columnName}" ${_.order}`:n.value[0]?A=`ORDER BY "${n.value[0]}" ASC`:A=`ORDER BY "${t.value[0]}" ASC`;const Q=`LIMIT ${f.limit}`,te=`OFFSET ${f.offset}`;return`${Pt} "${l}"."${i}" ${Y.value||""} ${A} ${Q} ${te}`}),ee=T(()=>`${no} "${l}"."${i}" ${Y.value||""}`),ue=(A,Q=0)=>{const te=`
|
|
3
|
+
${A}`;u.createLog({tableName:i,schemaName:l,logs:te,queryTime:Q})},{data:ce,status:R,refresh:E}=nt("/api/execute",{method:"POST",body:{query:ae,dbConnectionString:r},watch:!1,immediate:!1,key:i,cache:"default",onResponseError:A=>{var te,ie,K,X,ye;const Q=(ie=(te=A.response)==null?void 0:te._data)==null?void 0:ie.data;p.value=!0,h.value=((X=(K=A.response)==null?void 0:K._data)==null?void 0:X.message)||"",ke((ye=A.response)==null?void 0:ye.statusText,{important:!0,description:JSON.stringify(Q)})},onResponse:({response:A})=>{var Q;A.ok&&ue(ae.value,(Q=A._data)==null?void 0:Q.queryTime)}},"$69pxnUNlp7"),{refresh:q,data:me,status:N}=nt("/api/execute",{method:"POST",body:{query:ee,dbConnectionString:r},watch:!1,immediate:!1,key:`${i}-count`,cache:"default",onResponse:({response:A})=>{var Q;A.ok&&ue(ee.value,(Q=A._data)==null?void 0:Q.queryTime)}},"$syeR3GowUh"),F=T(()=>{var A,Q,te;return Number(((te=(Q=(A=me.value)==null?void 0:A.result)==null?void 0:Q[0])==null?void 0:te.count)||0)}),b=T(()=>f.offset+f.limit<F.value),O=T(()=>f.offset>0),x=({limit:A,offset:Q})=>{A<=0||Q<0||(f.limit=A,f.offset=Q,E())},H=({columnName:A,order:Q})=>{_.columnName=A,_.order=Q,E()},$=()=>{b&&(f.offset+=f.limit,E())},I=()=>{if(!O)return;const A=f.offset-f.limit;A<0?f.offset=0:f.offset=A,E()},B=A=>{C.value=A,f.offset=0,E(),q()},V=()=>{f.offset=0,E(),q()},de=()=>`${s==null?void 0:s.value}-${a==null?void 0:a.value}-${l}-${i}`;ve([w,f,_,g],vn(()=>{if(!o)return;const A=de();localStorage.setItem(A,JSON.stringify({filters:w.value,pagination:f,orderBy:_,isShowFilters:g.value,composeWith:C.value}))},ht),{deep:!0}),(()=>{if(!o){c&&(w.value=c,g.value=!0),d&&(C.value=d);return}const A=de(),Q=localStorage.getItem(A);if(Q){const{filters:te,pagination:ie,orderBy:K,isShowFilters:X,composeWith:ye}=JSON.parse(Q);K&&(_.columnName=K.columnName,_.order=K.order),ie&&(f.limit=ie.limit,f.offset=ie.offset),te&&(w.value=te),ye&&(C.value=ye),g.value=!!X}})();const le=T(()=>R.value==="pending"),re=T(()=>{var A;return((A=ce.value)==null?void 0:A.result)||[]});return{whereClauses:Y,pagination:f,queryString:ae,onUpdatePagination:x,isAllowNextPage:b,isAllowPreviousPage:O,onNextPage:$,onPreviousPage:I,queryCountString:ee,data:re,isFetchingTableData:le,refreshTableData:E,refreshCount:q,totalRows:F,onApplyNewFilter:V,baseQueryString:z,openErrorModal:p,onUpdateOrderBy:H,orderBy:_,errorMessage:h,filters:w,addHistoryLog:ue,isShowFilters:g,onChangeComposeWith:B,composeWith:C}},In=W({__name:"QuickQueryErrorPopup",props:{open:{},message:{}},emits:["update:open"],setup(i){return(r,n)=>{const t=oo,o=sn,l=an,s=Te,a=so,c=ln,d=on;return y(),k(d,{open:!!r.open,"onUpdate:open":n[1]||(n[1]=u=>r.$emit("update:open",u))},{default:v(()=>[m(c,{class:"w-96 min-w-96"},{default:v(()=>[m(o,{class:"pb-0"},{default:v(()=>[m(t,null,{default:v(()=>n[2]||(n[2]=[P("Query error!")])),_:1})]),_:1}),m(l,{class:"decoration-wavy underline decoration-red-600"},{default:v(()=>[P(Z(r.message),1)]),_:1}),m(a,{class:"pt-0"},{default:v(()=>[m(s,{onClick:n[0]||(n[0]=u=>r.$emit("update:open",!1)),class:"w-full"},{default:v(()=>n[3]||(n[3]=[P(" Oke ")])),_:1})]),_:1})]),_:1})]),_:1},8,["open"])}}});var G=(i=>(i.Data="Data",i.Structure="Structure",i.Erd="Erd",i))(G||{});const An=({tableName:i,schemaName:r,connectionId:n})=>{const{schemaStore:t}=Me(),{schemas:o}=Fe(t),l=T(()=>o.value.find(f=>f.name===r&&f.connectionId===n)),s=T(()=>{var w,_;return(_=(w=l.value)==null?void 0:w.tableDetails)==null?void 0:_[i]}),a=T(()=>{var f,w;return((w=(f=s.value)==null?void 0:f.columns)==null?void 0:w.map(_=>_.name))||[]}),c=T(()=>{var f;return(((f=s.value)==null?void 0:f.foreign_keys)||[]).map(w=>w.column)}),d=T(()=>{var f;return((f=s.value)==null?void 0:f.foreign_keys)||[]}),u=T(()=>{var f;return(((f=s.value)==null?void 0:f.primary_keys)||[]).map(w=>w.column)}),p=T(()=>{var f,w;return((w=(f=s.value)==null?void 0:f.columns)==null?void 0:w.map(_=>({name:_.name,type:_.short_type_name})))||[]}),h=T(()=>!1);return{primaryKeyColumns:u,foreignKeys:d,columnNames:a,isLoadingTableSchema:h,tableMetaData:s,columnTypes:p,foreignKeyColumns:c}};function Ts({schemaName:i,tableName:r,pKeys:n,pKeyValue:t}){if(!r||!(n!=null&&n.length))throw new Error("Invalid input: tableName and pKeys are required");const o=n.map(s=>`${s} = '${t[s]}'`).join(" AND ");return`DELETE FROM ${i}.${r} WHERE ${o}`}function ks({schemaName:i,tableName:r,insertData:n}){if(!r||!n)throw new Error("Invalid input: tableName, insertData object are required");const t=Object.entries(n).map(([s])=>`${s}`).join(", "),o=Object.values(n).map(s=>s===null?"NULL":typeof s=="string"?`'${s.replace(/'/g,"''")}'`:s).join(", ");return`INSERT INTO ${i}.${r} (${t}) VALUES (${o})`}function Fn(i){const{tableName:r,schemaName:n,primaryKeys:t,columnNames:o,data:l,selectedRows:s,pagination:a,addHistoryLog:c,refreshTableData:d,refreshCount:u,openErrorModal:p,errorMessage:h,quickQueryTableRef:f,focusedCell:w}=i,{connectionStore:_}=Me(),g=M(!1),C=async()=>{var F;const N=(F=f.value)==null?void 0:F.gridApi;N&&(N==null||N.deselectAll(),N==null||N.clearFocusedCell(),u(),d())},z=N=>{s.value=N},Y=N=>{w&&(w.value=N)},ae=async()=>{var b,O,x,H,$;if(!l.value||!((O=(b=f.value)==null?void 0:b.editedCells)!=null&&O.length)){ke.info("No changes to save.");return}const N=(x=f.value)==null?void 0:x.editedCells,F=[];if(N.forEach(I=>{var le;const B=!!Object.keys(I.changedData).length,V=(le=l.value)==null?void 0:le[I.rowId],de=B&&V,ge=B&&!V;if(de){const re=Os({tableName:r,schemaName:n,update:I.changedData,pKeys:t.value,pKeyValue:V});F.push(re)}else if(ge){const re=ks({tableName:r,schemaName:n,insertData:I.changedData});F.push(re)}}),!F.length){ke.info("No valid changes to save.");return}g.value=!0;try{const{queryTime:I}=await $fetch("/api/execute-bulk-update",{method:"POST",body:{sqlUpdateStatements:F,dbConnectionString:(H=_.selectedConnection)==null?void 0:H.connectionString},onResponseError({response:B}){var V;p.value=!0,console.error("Error during bulk update:",B==null?void 0:B._data),h.value=((V=B==null?void 0:B._data)==null?void 0:V.message)||"An unknown error occurred during update."}});($=f.value)!=null&&$.editedCells&&(f.value.editedCells=[]),c(F.join(`
|
|
4
|
+
`),I),u(),d(),ke.success("Data saved successfully!")}catch(I){console.error("Fetch error in onSaveData:",I)}finally{g.value=!1}},ee=async()=>{var F,b,O;if(!s.value.length){ke.info("No rows selected for deletion.");return}const N=[];s.value.forEach(x=>{const H=Ts({tableName:r,schemaName:n,pKeys:t.value,pKeyValue:x});N.push(H)}),g.value=!0;try{const{queryTime:x}=await $fetch("/api/execute-bulk-delete",{method:"POST",body:{sqlDeleteStatements:N,dbConnectionString:(F=_.selectedConnection)==null?void 0:F.connectionString},onResponseError({response:$}){var I;p.value=!0,h.value=((I=$==null?void 0:$._data)==null?void 0:I.message)||"An unknown error occurred during deletion.",console.error("Error during bulk delete:",$==null?void 0:$._data)}});if(((b=s.value)==null?void 0:b.length)===((O=l.value)==null?void 0:O.length)&&a.offset>0){const $=a.offset-a.limit;a.offset=$>0?$:0}c(N.join(`
|
|
5
|
+
`),x||0),u(),d(),ke.success("Rows deleted successfully!")}catch(x){console.error("Fetch error in onDeleteRows:",x)}finally{g.value=!1}},ue=()=>{var H;const N=(H=f.value)==null?void 0:H.gridApi;if(!N){ke.error("Table grid API not available to add row.");return}let F=0;N.forEachNode(()=>F++);const b=F,O={[Le]:b+1,...Object.fromEntries(o.value.map($=>[$,void 0]))};N.applyTransaction({add:[O],addIndex:b}),N.setFocusedCell(b,o.value[0]);const x=N.getRowNode(b.toString());x&&(N.deselectAll(),x.setSelected(!0),ke.message("Empty row added. Please fill in data and save."))},ce=T(()=>{var F;let N=0;return(F=f.value)==null||F.editedCells.forEach(b=>{Object.keys(b.changedData).length&&N++}),!!N});return{onAddEmptyRow:ue,onDeleteRows:ee,onSaveData:ae,isMutating:g,hasEditedRows:ce,onCopyRows:()=>{const N=s.value;if(!N)return;const F=N.map(b=>{var x;const O=((b==null?void 0:b[Le])||1)-1;return(x=l.value)==null?void 0:x[O]});us(F)},onPasteRows:async()=>{var b,O;const N=(b=f.value)==null?void 0:b.gridApi;if(!N)return;const F=N.getFocusedCell();F&&(F==null||F.rowIndex,(O=F==null?void 0:F.column)==null||O.getColId(),await navigator.clipboard.readText())},onRefresh:C,onSelectedRowsChange:z,onCopySelectedCell:async()=>{w!=null&&w.value&&await navigator.clipboard.writeText(gn(w.value)||"")},onFocusedCellChange:Y,onDeselectAll:()=>{var F;(F=f.value)!=null&&F.gridApi}}}const En=()=>{const{connectionStore:i,wsStateStore:r}=Me(),{connectionId:n,workspaceId:t}=Fe(r),o=M(),l=M(),s=M([]),a=M(void 0),c=M(!1),d=T(()=>{var u;return((u=i.selectedConnection)==null?void 0:u.connectionString)||""});return{quickQueryFilterRef:o,quickQueryTableRef:l,selectedRows:s,isMutating:c,connectionString:d,connectionId:n,workspaceId:t,focusedCell:a}},Nt=({schemaName:i,tableName:r})=>{const{schemaStore:n}=Me(),{reservedSchemas:t}=Fe(n),o=T(()=>(t.value||[]).find(c=>c.table===r&&c.schema===i)),l=T(()=>{var c,d;const a=new Map;return(d=(c=o.value)==null?void 0:c.used_by)==null||d.forEach(u=>{a.set(u.referenced_column,!0)}),a});return{reservedSchemas:t,reverseTables:o,isHaveRelationByFieldName:a=>l.value.has(a)}};function Ns(i){switch(i.toLowerCase()){case"char":case"varchar":case"text":case"uuid":case"citext":return"string";case"int2":case"int4":case"int8":case"numeric":case"float4":case"float8":case"decimal":return"number";case"bool":return"boolean";case"json":case"jsonb":return"any";case"date":case"timestamp":case"timestamptz":case"time":case"timetz":return"string";default:return"unknown"}}const $s=["for"],Is=["for"],As=W({__name:"DynamicForm",props:{fields:{},validationSchema:{},class:{}},setup(i,{expose:r}){const n=i,t=Cn({validationSchema:Sn(n.validationSchema),name:`dynamic-form-${qe()}`});return r({form:t}),(o,l)=>(y(),D("div",{class:Re(n.class)},[(y(!0),D(he,null,Oe(o.fields,s=>Ne((y(),D("div",{key:s.name},[S("div",{class:Re(["flex justify-between pb-0.5",s.titleClass])},[S("label",{class:"text-xs text-right",for:s.name},Z(s.label),9,$s),S("label",{class:"text-xs text-right text-primary/80",for:s.name},Z(s.type),9,Is)],2),m(e(Do),{as:s.as,id:s.name,name:s.name,class:Re(s.class),placeholder:s.placeholder},null,8,["as","id","name","class","placeholder"])])),[[Ae,s.isShow]])),128))],2))}}),Fs={class:"relative w-full p-1"},Es={class:"absolute left-3 top-2.5 w-4"},Ps={key:0,class:"flex items-center justify-center h-40"},Ds=W({__name:"PreviewSelectedRow",props:{columnTypes:{},selectedRow:{}},setup(i){const r=i,n=T(()=>{const u={};return r.columnTypes.forEach(p=>{const h=Ns(p.type);h==="boolean"?u[p.name]=ds().optional():h==="number"?u[p.name]=cs().optional():u[p.name]=Uo().optional()}),u}),t=rn(""),o=ao(t,ht),l=T(()=>{const u=[],p=o.value.toLowerCase().trim();return r.columnTypes.forEach(h=>{const f=h.name.toLowerCase(),w=p?f.includes(p):!0;u.push({label:h.name,type:h.type,as:On,name:h.name,class:"px-1 py-0.5 h-fit min-h-6! text-primary/80 font-normal!",placeholder:"NULL",isShow:w})}),u}),s=T(()=>{const u=o.value.toLowerCase().trim();return u?!r.columnTypes.some(p=>p.name.toLowerCase().includes(u)):!1}),a=T(()=>Tn(n.value)),c=M(),d=u=>{const p=Object.entries(u).reduce((h,[f,w])=>(h[f]=gn(w||""),h),{});Se(()=>{var h;(h=c.value)==null||h.form.setValues(p)})};return ve(()=>[r.selectedRow,c],([u])=>{u&&d(u)},{immediate:!0,deep:!0}),(u,p)=>{const h=fe,f=je;return y(),D(he,null,[S("div",Fs,[S("div",Es,[m(h,{name:"lucide:search",class:"stroke-3!"})]),m(f,{type:"text",placeholder:"Search fields ...",class:"pr-6 pl-6 w-full h-8",modelValue:e(t),"onUpdate:modelValue":p[0]||(p[0]=w=>$e(t)?t.value=w:null)},null,8,["modelValue"]),e(t)?(y(),D("div",{key:0,class:"absolute right-3 top-2.5 w-4 cursor-pointer rounded-md hover:bg-accent",onClick:p[1]||(p[1]=w=>t.value="")},[m(h,{name:"lucide:x",class:"stroke-3! text-muted-foreground"})])):J("",!0)]),e(s)?(y(),D("div",Ps," No field match! ")):(y(),k(As,{key:1,ref_key:"dynamicForm",ref:c,class:"space-y-1 p-1 overflow-y-auto",fields:e(l),"validation-schema":e(a)},null,8,["fields","validation-schema"]))],64)}}}),Ms={class:"grid gap-3"},Bs={class:"grid gap-2"},Vs={class:"grid grid-cols-3 items-center gap-4"},zs={class:"grid grid-cols-3 items-center gap-4"},Ls={class:"flex justify-center"},Us=W({__name:"QuickPagination",props:{limit:{},offset:{},totalRows:{}},emits:["onPaginate"],setup(i,{emit:r}){const n=i,t=r,o=M(0),l=M(0),s=M(!1),a=()=>{o.value=n.limit,l.value=n.offset},c=()=>{if(l.value>n.totalRows){l.value=n.totalRows-1;return}l.value<0&&(l.value=n.offset)},d=()=>{if(o.value>n.totalRows){o.value=n.totalRows;return}o.value<0&&(o.value=n.limit)},u=()=>{c(),d(),t("onPaginate",{limit:o.value,offset:l.value}),s.value=!1};return(p,h)=>(y(),k(e(Rn),{open:s.value,"onUpdate:open":h[2]||(h[2]=f=>s.value=f)},{default:v(()=>[m(e(_n),{"as-child":""},{default:v(()=>[m(e(Te),{onClick:a,variant:"outline",size:"sm",class:"h-6 font-normal"},{default:v(()=>[P(Z(p.limit),1)]),_:1})]),_:1}),m(e(xn),{class:"w-64"},{default:v(()=>[S("div",Ms,[h[6]||(h[6]=S("div",{class:"space-y-2"},[S("h4",{class:"font-medium leading-none"},"Pagination"),S("p",{class:"text-sm text-muted-foreground"},"Set limit and offset")],-1)),S("div",Bs,[S("div",Vs,[m(e(Lt),{for:"limit"},{default:v(()=>h[3]||(h[3]=[P("Limit")])),_:1}),m(e(je),{id:"limit",type:"number",modelValue:o.value,"onUpdate:modelValue":h[0]||(h[0]=f=>o.value=f),modelModifiers:{number:!0},class:"col-span-2 h-6",min:"1",onBlur:d,onKeyup:Ue(u,["enter"])},null,8,["modelValue"])]),S("div",zs,[m(e(Lt),{for:"offset"},{default:v(()=>h[4]||(h[4]=[P("Offset")])),_:1}),m(e(je),{id:"offset",type:"number",modelValue:l.value,"onUpdate:modelValue":h[1]||(h[1]=f=>l.value=f),modelModifiers:{number:!0},class:"col-span-2 h-6",min:"0",onBlur:c,onKeyup:Ue(u,["enter"])},null,8,["modelValue"])])]),S("div",Ls,[m(e(Te),{size:"sm",class:"h-6 px-6",onClick:u},{default:v(()=>h[5]||(h[5]=[P("Go")])),_:1})])])]),_:1})]),_:1},8,["open"]))}}),js=W({__name:"RefreshButton",emits:["onRefresh"],setup(i,{emit:r}){const n=r,t=M(0),o=()=>{t.value+=360,n("onRefresh")};return Ke([{key:"meta+r",callback:()=>{o()}}],{isPreventDefault:!0}),(l,s)=>(y(),k(e(Te),{variant:"outline",size:"sm",class:"h-6 px-1 gap-1",onClick:o,"aria-label":"Refresh table"},{default:v(()=>[m(e(fe),{name:"hugeicons:refresh",style:tt({transform:`rotate(${t.value}deg)`}),class:"icon-transition"},null,8,["style"]),m(e(Ot),null,{default:v(()=>s[0]||(s[0]=[P("⌘R")])),_:1})]),_:1}))}}),Ks=Jo(js,[["__scopeId","data-v-485f8c75"]]),qs={key:0,class:"flex items-center gap-1"},Qs={key:1,class:"font-normal text-xs text-primary/60"},Ws={key:2,class:"font-normal text-sm text-primary"},Hs={key:1},Gs={key:2,class:"flex items-center gap-2"},Js={class:"font-normal text-sm text-primary/80"},Ys={key:3},Xs={class:"flex items-center gap-2"},Pn=W({__name:"QuickQueryControlBar",props:{isAllowNextPage:{type:Boolean},isAllowPreviousPage:{type:Boolean},totalRows:{},limit:{},offset:{},currentTotalRows:{},totalSelectedRows:{},hasEditedRows:{type:Boolean},tabView:{}},emits:["onRefresh","onPaginate","onNextPage","onPreviousPage","onShowFilter","onSaveData","onAddEmptyRow","onDeleteRows","onToggleHistoryPanel","update:tabView"],setup(i,{emit:r}){const n=i,t=r,o=M(),l=T(()=>n.tabView===G.Data);return(s,a)=>{const c=Ot,d=Te,u=kt,p=Tt,h=xt,f=lo("auto-animate");return y(),D("div",{ref_key:"quickQueryControlBarRef",ref:o,class:Re(["w-full select-none h-9 flex items-center justify-between"])},[e(l)?Ne((y(),D("div",qs,[m(d,{variant:"outline",size:"sm",class:"h-6 px-1 gap-1",onClick:a[0]||(a[0]=w=>t("onShowFilter"))},{default:v(()=>[m(e(fe),{name:"lucide:filter"}),m(c,null,{default:v(()=>a[10]||(a[10]=[P("⌘F")])),_:1})]),_:1}),m(Ks,{onOnRefresh:a[1]||(a[1]=w=>t("onRefresh"))}),J("",!0),m(d,{variant:"outline",size:"sm",class:"h-6 px-1 gap-1",onClick:a[3]||(a[3]=w=>t("onToggleHistoryPanel"))},{default:v(()=>[m(e(fe),{name:"lucide:terminal"}),m(c,null,{default:v(()=>a[12]||(a[12]=[P("⌘j")])),_:1})]),_:1}),s.totalSelectedRows?(y(),D("p",Qs," Selected ")):J("",!0),s.totalSelectedRows?(y(),D("p",Ws,Z(s.totalSelectedRows),1)):J("",!0),s.hasEditedRows?(y(),k(d,{key:3,variant:"outline",size:"sm",class:"h-6 px-1 gap-1",onClick:a[4]||(a[4]=w=>t("onSaveData"))},{default:v(()=>[m(e(fe),{name:"lucide:save"}),m(c,null,{default:v(()=>a[13]||(a[13]=[P("⌘S")])),_:1})]),_:1})):J("",!0),s.totalSelectedRows?(y(),k(d,{key:4,variant:"outline",size:"sm",class:"h-6 px-1 gap-1 mr-1",onClick:a[5]||(a[5]=w=>t("onDeleteRows"))},{default:v(()=>[m(e(fe),{name:"lucide:trash"}),m(c,null,{default:v(()=>a[14]||(a[14]=[P("⌥⌘⌫")])),_:1})]),_:1})):J("",!0)])),[[f]]):(y(),D("div",Hs)),e(l)?(y(),D("div",Gs,[m(d,{variant:"outline",size:"iconSm",class:"h-6",disabled:!s.isAllowPreviousPage,onClick:a[6]||(a[6]=w=>t("onPreviousPage"))},{default:v(()=>[m(e(fe),{name:"lucide:chevron-left"})]),_:1},8,["disabled"]),S("div",Js,[P(Z(s.offset+1)+"-"+Z(s.offset+s.currentTotalRows)+" ",1),a[15]||(a[15]=S("p",{class:"font-normal text-xs text-primary/60 inline"},"of",-1)),P(" "+Z(s.totalRows)+" ",1),a[16]||(a[16]=S("p",{class:"font-normal text-xs text-primary/60 inline"},"rows",-1))]),m(d,{variant:"outline",size:"iconSm",class:"h-6",disabled:!s.isAllowNextPage,onClick:a[7]||(a[7]=w=>t("onNextPage"))},{default:v(()=>[m(e(fe),{name:"lucide:chevron-right"})]),_:1},8,["disabled"]),m(Us,{limit:s.limit,offset:s.offset,totalRows:s.totalRows,onOnPaginate:a[8]||(a[8]=w=>t("onPaginate",w))},null,8,["limit","offset","totalRows"])])):(y(),D("div",Ys)),S("div",Xs,[m(h,{"model-value":s.tabView,"onUpdate:modelValue":a[9]||(a[9]=w=>s.$emit("update:tabView",w))},{default:v(()=>[m(p,{class:"grid w-full grid-cols-3 h-[1.625rem]!"},{default:v(()=>[m(u,{value:e(G).Data,class:"h-5! px-1 font-medium text-xs cursor-pointer text-primary/80"},{default:v(()=>a[17]||(a[17]=[P(" Data ")])),_:1},8,["value"]),m(u,{value:e(G).Structure,class:"h-5! px-1 font-medium text-xs cursor-pointer text-primary/80"},{default:v(()=>a[18]||(a[18]=[P(" Structure ")])),_:1},8,["value"]),m(u,{value:e(G).Erd,class:"h-5! px-1 font-medium text-xs cursor-pointer text-primary/80"},{default:v(()=>a[19]||(a[19]=[P(" ERD ")])),_:1},8,["value"])]),_:1})]),_:1},8,["model-value"])])],512)}}}),Zs=W({__name:"Checkbox",props:{defaultValue:{type:[Boolean,String]},modelValue:{type:[Boolean,String,null]},disabled:{type:Boolean},value:{},id:{},asChild:{type:Boolean},as:{},name:{},required:{type:Boolean},class:{}},emits:["update:modelValue"],setup(i,{emit:r}){const n=i,t=r,o=T(()=>{const{class:s,...a}=n;return a}),l=ro(o,t);return(s,a)=>(y(),k(e(as),De({"data-slot":"checkbox"},e(l),{class:e(pt)("peer border-input data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",n.class)}),{default:v(()=>[m(e(ls),{"data-slot":"checkbox-indicator",class:"flex items-center justify-center text-current transition-none"},{default:v(()=>[Ie(s.$slots,"default",{},()=>[m(e(io),{class:"size-3.5"})])]),_:3})]),_:3},16,["class"]))}}),ea=W({__name:"ColumnSelector",props:{columns:{},value:{}},emits:["update:value","update:open"],setup(i){return(r,n)=>{const t=gt,o=vt,l=wt,s=un,a=bt,c=yt,d=Ct;return y(),k(d,{"model-value":r.value,"onUpdate:modelValue":n[0]||(n[0]=u=>r.$emit("update:value",u)),"onUpdate:open":n[1]||(n[1]=u=>r.$emit("update:open",u))},{default:v(()=>[m(o,{class:"w-36 min-w-36 h-6! text-sm cursor-pointer px-2"},{default:v(()=>[m(t,{placeholder:"Select field"})]),_:1}),m(c,null,{default:v(()=>[m(a,null,{default:v(()=>[(y(!0),D(he,null,Oe(r.columns,u=>(y(),k(l,{class:"h-6 text-sm cursor-pointer",value:u},{default:v(()=>[P(Z(u),1)]),_:2},1032,["value"]))),256)),m(s),(y(!0),D(he,null,Oe(e($o),u=>(y(),k(l,{class:"h-6 text-sm cursor-pointer",value:u.value},{default:v(()=>[P(Z(u.label),1)]),_:2},1032,["value"]))),256))]),_:1})]),_:1})]),_:1},8,["model-value"])}}}),ta=W({__name:"OperatorSelector",props:{dbType:{},value:{}},emits:["update:value","update:open"],setup(i){const r=i,n=T(()=>Ao[r.dbType]);return(t,o)=>{const l=gt,s=vt,a=wt,c=bt,d=yt,u=Ct;return y(),k(u,{"model-value":t.value,"onUpdate:modelValue":o[0]||(o[0]=p=>t.$emit("update:value",p)),"onUpdate:open":o[1]||(o[1]=p=>t.$emit("update:open",p))},{default:v(()=>[m(s,{class:"w-36 min-w-36 h-6! text-sm cursor-pointer px-2"},{default:v(()=>[m(l,{placeholder:"Select operator"})]),_:1}),m(d,null,{default:v(()=>[m(c,null,{default:v(()=>[(y(!0),D(he,null,Oe(e(n),p=>(y(),D(he,null,[p.value===e(Io).value?(y(),k(e(un),{key:0})):(y(),k(a,{key:1,class:"h-6 text-sm cursor-pointer",value:p.value},{default:v(()=>[P(Z(p.label),1)]),_:2},1032,["value"]))],64))),256))]),_:1})]),_:1})]),_:1},8,["model-value"])}}}),na={class:"text-xs font-medium"},oa={class:"text-xs font-medium"},sa=W({__name:"ViewParserFilterApply",props:{getParserApplyFilter:{type:Function},getParserAllFilter:{type:Function}},setup(i){const r=i,n=M(""),t=M(""),o=()=>{n.value=Wt(r.getParserApplyFilter(),{language:"postgresql",keywordCase:"upper"}),t.value=Wt(r.getParserAllFilter(),{language:"postgresql",keywordCase:"upper"})};return(l,s)=>{const a=Te,c=_n,d=On,u=xn,p=Rn;return y(),k(p,null,{default:v(()=>[m(c,null,{default:v(()=>[m(a,{onClick:o,size:"sm",class:"h-6 text-xs",variant:"outline"},{default:v(()=>s[0]||(s[0]=[P(" SQL ")])),_:1})]),_:1}),m(u,{class:"w-[40rem] p-2 space-y-2"},{default:v(()=>[S("div",na,[s[1]||(s[1]=P(" Curren filter ")),m(d,{class:"text-xs! mt-1 h-full max-h-[15rem] font-normal","model-value":e(n),readonly:""},null,8,["model-value"])]),S("div",oa,[s[2]||(s[2]=P(" Apply all filter ")),m(d,{class:"text-xs! mt-1 h-full max-h-[15rem] font-normal","model-value":e(t),readonly:""},null,8,["model-value"])])]),_:1})]),_:1})}}}),aa={class:"flex justify-between"},la={class:"flex items-center gap-0.5 text-xs"},ra={class:"text-xs flex items-center gap-2"},ia=W({__name:"QuickQueryFilterGuide",props:{getParserApplyFilter:{type:Function},getParserAllFilter:{type:Function},composeWith:{}},emits:["onChangeComposeWith"],setup(i,{emit:r}){const n=r;return(t,o)=>{const l=gt,s=vt,a=wt,c=bt,d=yt,u=Ct,p=Ot;return y(),D("div",aa,[S("div",la,[o[3]||(o[3]=P(" Compose with: ")),m(u,{modelValue:t.composeWith,"onUpdate:modelValue":o[0]||(o[0]=h=>n("onChangeComposeWith",h))},{default:v(()=>[m(s,{class:"w-14 h-5! text-xs cursor-pointer px-1 border-none gap-1 shadow-none"},{default:v(()=>[m(l,{placeholder:"Select operator"})]),_:1}),m(d,null,{default:v(()=>[m(c,null,{default:v(()=>[m(a,{class:"h-5 text-xs cursor-pointer",value:e(ot).AND},{default:v(()=>o[1]||(o[1]=[P(" AND ")])),_:1},8,["value"]),m(a,{class:"h-5 text-xs cursor-pointer",value:e(ot).OR},{default:v(()=>o[2]||(o[2]=[P(" OR ")])),_:1},8,["value"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),S("div",ra,[S("div",null,[m(p,null,{default:v(()=>o[4]||(o[4]=[P("⌘F")])),_:1}),o[5]||(o[5]=P(": Show"))]),S("div",null,[m(p,null,{default:v(()=>o[6]||(o[6]=[P("Esc")])),_:1}),o[7]||(o[7]=P(": Exit"))]),m(e(Po),{orientation:"vertical",class:"h-3/4!"}),S("div",null,[m(p,null,{default:v(()=>o[8]||(o[8]=[P("⌘I")])),_:1}),o[9]||(o[9]=P(": Insert"))]),S("div",null,[m(p,null,{default:v(()=>o[10]||(o[10]=[P("⌘⌫")])),_:1}),o[11]||(o[11]=P(": Delete"))]),S("div",null,[m(p,null,{default:v(()=>o[12]||(o[12]=[P("⌘↵")])),_:1}),o[13]||(o[13]=P(": Apply all"))])]),S("div",null,[m(sa,{getParserApplyFilter:t.getParserApplyFilter,getParserAllFilter:t.getParserAllFilter},null,8,["getParserApplyFilter","getParserAllFilter"])])])}}}),Dn=W({__name:"QuickQueryFilter",props:Dt({columns:{},dbType:{},baseQuery:{},initFilters:{},composeWith:{}},{isShowFilters:{},isShowFiltersModifiers:{}}),emits:Dt(["onSearch","onUpdateFilters","onChangeComposeWith"],["update:isShowFilters"]),setup(i,{expose:r,emit:n}){const t=i,o=uo(i,"isShowFilters"),l=n,s=M(),a=St("filterSearchRefs"),c=Tn({filters:Fo.array()});Cn({validationSchema:Sn(c),initialValues:{filters:t.initFilters||[]},keepValuesOnUnmount:!1});const{remove:d,fields:u,insert:p,update:h}=Mo("filters");ve(u,vn(()=>{l("onUpdateFilters",u.value.map(R=>R.value)||[])},ht),{deep:!0});const f=R=>{p(R+1,{isSelect:!0,fieldName:ut.RawQuery})},w=(R,E)=>{var F,b;const q=(b=(F=u.value)==null?void 0:F[R])==null?void 0:b.value,me=(q==null?void 0:q.fieldName)===ut.RawQuery,N=!(q!=null&&q.operator);me&&N?h(R,{...q,fieldName:E,operator:Qe.LIKE_CONTAINS}):h(R,{...q,fieldName:E})},_=()=>`${t.baseQuery} ${ft({columns:t.columns,db:t.dbType,filters:u.value.map(R=>R.value)||[]})};`,g=()=>`${t.baseQuery} ${ft({columns:t.columns,db:t.dbType,filters:u.value.map(R=>({...R.value,isSelect:!0}))||[]})};`,C=(R=!1)=>{if(R){l("onSearch");return}l("onSearch")},z=R=>{var q,me;const E=(me=(q=u.value)==null?void 0:q[R])==null?void 0:me.value;E!=null&&E.isSelect||h(R,{...E,isSelect:!0}),C()},Y=()=>{u.value.forEach((R,E)=>{h(E,{...R.value,isSelect:!0})}),C()},ae=async R=>{d(R),await Se(),R!==0&&ee(R-1),l("onUpdateFilters",u.value.map(E=>E.value)||[]),C()},ee=R=>{var E,q;a.value&&((q=(E=a.value)==null?void 0:E[R])==null||q.$el.focus())},ue=()=>{u.value.length||f(-1),o.value=!0,Se(()=>{const R=u.value.length-1||0;ee(R)})},ce=()=>a.value?a.value.findIndex(E=>E.$el===document.activeElement):void 0;return Ke([{key:"meta+backspace",callback:async()=>{const R=ce();R!==void 0&&ae(R)}},{key:"meta+enter",callback:()=>{const R=ce();R!==void 0&&R>=0&&Y()}},{key:"meta+i",callback:async()=>{const R=ce();R!==void 0&&(f(R),await Se(),ee(R+1))}},{key:"escape",callback:()=>{o.value=!1,C(!0)}}],{target:s}),r({onShowSearch:ue,insert:p}),(R,E)=>{const q=Zs,me=je,N=Te;return o.value?(y(),D("div",{key:0,ref_key:"quickQueryFilterRef",ref:s,class:Re(["h-fit space-y-1",e(u).length&&"pb-2"]),onKeyup:E[1]||(E[1]=Ue(()=>C(),["enter"]))},[(y(!0),D(he,null,Oe(e(u),({key:F,value:b},O)=>(y(),D("div",{class:"flex gap-1 items-center",key:F},[m(q,{"model-value":b.isSelect,"onUpdate:modelValue":x=>b.isSelect=x},null,8,["model-value","onUpdate:modelValue"]),m(ea,{columns:R.columns,value:b.fieldName,"onUpdate:value":x=>{w(O,x)},"onUpdate:open":x=>{x||("nextTick"in R?R.nextTick:e(Se))(()=>ee(O))}},null,8,["columns","value","onUpdate:value","onUpdate:open"]),b.fieldName!==e(ut).RawQuery?(y(),k(ta,{key:0,"db-type":R.dbType,value:b.operator,"onUpdate:value":x=>b.operator=x,"onUpdate:open":x=>{x||("nextTick"in R?R.nextTick:e(Se))(()=>ee(O))}},null,8,["db-type","value","onUpdate:value","onUpdate:open"])):J("",!0),m(me,{"model-value":b.search,"onUpdate:modelValue":x=>b.search=x,type:"text",placeholder:e(Eo)(b.operator||""),class:"w-full h-6 px-2",ref_for:!0,ref_key:"filterSearchRefs",ref:a},null,8,["model-value","onUpdate:modelValue","placeholder"]),m(N,{class:"h-6 px-1.5",variant:"outline",onClick:x=>z(O)},{default:v(()=>E[2]||(E[2]=[P(" Apply ")])),_:2},1032,["onClick"]),m(N,{size:"iconSm",class:"size-5!",variant:"outline",onClick:x=>ae(O)},{default:v(()=>[m(e(fe),{name:"hugeicons:minus-sign"})]),_:2},1032,["onClick"]),m(N,{size:"iconSm",class:"size-5!",variant:"outline",onClick:()=>f(O)},{default:v(()=>[m(e(fe),{name:"hugeicons:plus-sign"})]),_:2},1032,["onClick"])]))),128)),e(u).length?(y(),k(ia,{key:0,getParserApplyFilter:_,getParserAllFilter:g,"compose-with":R.composeWith,onOnChangeComposeWith:E[0]||(E[0]=F=>l("onChangeComposeWith",F))},null,8,["compose-with"])):J("",!0)],34)):J("",!0)}}}),Mn=W({__name:"QuickQueryContextMenu",props:{totalSelectedRows:{},hasEditedRows:{type:Boolean},isReferencedTable:{type:Boolean},cellContextMenu:{},cellHeaderContextMenu:{},data:{},selectedRows:{},tableName:{}},emits:["onRefresh","onSaveData","onAddEmptyRow","onDeleteRows","onCopyRows","onPasteRows","onCopySelectedCell","onFilterByValue","onClearContextMenu"],setup(i,{emit:r}){const{onShowSecondSidebar:n}=cn(),t=i,o=r,l=T(()=>{var g,C,z,Y;return((C=(g=t.cellContextMenu)==null?void 0:g.column)==null?void 0:C.getColId())??((Y=(z=t.cellHeaderContextMenu)==null?void 0:z.column)==null?void 0:Y.getColId())}),s=T(()=>{var g,C,z;return((g=t.cellContextMenu)==null?void 0:g.column.getColDef().headerName)??((z=(C=t.cellHeaderContextMenu)==null?void 0:C.column)==null?void 0:z.getColDef().headerName)??""}),a=g=>{jt(t.selectedRows||[],s.value??"",g)},c=g=>{jt(t.data||[],s.value??"",g)},d=g=>ct(t.selectedRows||[],t.tableName||"table_data",g),u=g=>ct(t.data||[],t.tableName||"table_data",g),p=g=>Kt(t.selectedRows||[],t.tableName||"table_data",g,"selected"),h=g=>Kt(t.data||[],t.tableName||"table_data",g,"all"),f=()=>{var C;const g=(C=t.cellContextMenu)==null?void 0:C.value;if(g!==void 0){if(typeof g=="object")return qt(JSON.stringify(g));qt(String(g))}},w=()=>{var g;if(t.cellContextMenu){const C=(g=t.cellContextMenu)==null?void 0:g.data;ct([C],t.tableName||"table_data","csv-no-header")}},_=T(()=>{var R;const g=!!t.cellContextMenu,C=t.selectedRows.length>0,z=t.selectedRows.length,Y=((R=t.data)==null?void 0:R.length)||0,ae=!!l.value,ee=[{type:j.LABEL,title:`${z} selected`,condition:C&&g},{type:j.ACTION,title:"Copy as text",icon:"hugeicons:file-01",select:()=>a("list"),condition:C&&g},{type:j.ACTION,title:"Copy as JSON",icon:"hugeicons:code",select:()=>a("json"),condition:C&&g},{type:j.SEPARATOR,condition:C&&g},{type:j.LABEL,title:"All data in column"},{type:j.ACTION,title:"Copy as text",icon:"hugeicons:file-01",select:()=>c("list")},{type:j.ACTION,title:"Copy as JSON",icon:"hugeicons:code",select:()=>c("json")}],ue=[{type:j.LABEL,title:`${z} selected row(s)`,condition:C},{type:j.ACTION,title:"Copy as CSV/TSV",icon:"hugeicons:csv-02",select:()=>d("csv-no-header"),condition:C},{type:j.ACTION,title:"Copy as JSON",icon:"hugeicons:code",select:()=>d("json"),condition:C},{type:j.ACTION,title:"Copy as SQL",icon:"hugeicons:database",select:()=>d("sql"),condition:C},{type:j.SEPARATOR,condition:C},{type:j.LABEL,title:"All rows"},{type:j.ACTION,title:"Copy as CSV/TSV",icon:"hugeicons:csv-02",select:()=>u("csv-no-header")},{type:j.ACTION,title:"Copy as JSON",icon:"hugeicons:code",select:()=>u("json")},{type:j.ACTION,title:"Copy as SQL",icon:"hugeicons:database",select:()=>u("sql")}],ce=[{type:j.LABEL,title:`${z} selected row${z>1?"s":""}`,condition:C},{type:j.ACTION,title:"Export as CSV",icon:"hugeicons:csv-01",select:()=>p("csv-no-header"),condition:C},{type:j.ACTION,title:"Export as CSV (have headers)",icon:"hugeicons:csv-01",select:()=>p("csv-with-header"),condition:C},{type:j.ACTION,title:"Export as JSON",icon:"hugeicons:code",select:()=>p("json"),condition:C},{type:j.ACTION,title:"Export as SQL",icon:"hugeicons:database",select:()=>p("sql"),condition:C},{type:j.SEPARATOR,condition:C},{type:j.LABEL,title:`All ${Y.toLocaleString()} row${Y!==1?"s":""}`},{type:j.ACTION,title:"Export as CSV",icon:"hugeicons:csv-01",select:()=>h("csv-no-header")},{type:j.ACTION,title:"Export as CSV (have headers)",icon:"hugeicons:csv-01",select:()=>h("csv-with-header")},{type:j.ACTION,title:"Export as JSON",icon:"hugeicons:code",select:()=>h("json")},{type:j.ACTION,title:"Export as SQL",icon:"hugeicons:database",select:()=>h("sql")}];return[{title:"View row detail",icon:"hugeicons:view",type:j.ACTION,select:()=>{n()},condition:!t.isReferencedTable&&!!t.cellContextMenu},{title:"Filter by value",icon:"lucide:filter",type:j.ACTION,shortcut:"⌘F",select:()=>{o("onFilterByValue")},condition:!!t.cellContextMenu},{title:"Refresh",icon:"hugeicons:refresh",type:j.ACTION,shortcut:"⌘R",select:()=>{o("onRefresh")}},{type:j.SEPARATOR},{type:j.ACTION,title:"Copy current cell",icon:"hugeicons:copy-02",select:f,condition:g},{type:j.ACTION,title:"Copy current row",icon:"hugeicons:copy-02",select:w,condition:C&&g},{type:j.SEPARATOR,condition:g},{type:j.SUBMENU,title:"Copy column",icon:"hugeicons:layout-3-column",items:ee,condition:ae,desc:s.value||"Select a column"},{type:j.SUBMENU,title:"Copy row(s)",icon:"hugeicons:layout-3-row",items:ue},{type:j.SEPARATOR},{type:j.SUBMENU,title:"Export",icon:"hugeicons:file-download",items:ce}]});return(g,C)=>{const z=jo;return y(),k(z,{contextMenuItems:e(_),onOnClearContextMenu:C[0]||(C[0]=Y=>o("onClearContextMenu"))},{default:v(()=>[Ie(g.$slots,"default")]),_:3},8,["contextMenuItems"])}}}),ua={class:"flex items-center justify-between"},ca={class:"truncate"},da=W({__name:"CustomCellUuid",props:{params:{}},setup(i){return(r,n)=>{var t,o;return y(),D("div",ua,[S("span",ca,Z(((o=(t=r.params)==null?void 0:t.formatValue)==null?void 0:o.call(t,r.params.value))||r.params.value),1),r.params.isPrimaryKey&&r.params.value?(y(),k(e(fe),{key:0,onClick:n[0]||(n[0]=()=>{r.params.onOpenPreviewReverseTableModal(r.params.value)}),name:"hugeicons:view",class:"min-w-4 w-4! cursor-pointer hover:bg-amber-500"})):J("",!0)])}}}),ma={class:"ag-header-cell-text items-center flex gap-0.5","data-ref":"eText"},fa={class:"text-[10px]!"},pa={key:0,class:"ag-sort-indicator-container","data-ref":"eSortIndicator"},ha={key:0,class:"ag-sort-indicator-icon ag-sort-ascending-icon","data-ref":"eSortAsc","aria-hidden":"true"},va={key:1,class:"ag-sort-indicator-icon ag-sort-descending-icon","data-ref":"eSortDesc","aria-hidden":"true"},ga=W({__name:"CustomHeaderTable",props:{params:{}},setup(i){const r=i,n=()=>{if(!r.params.allowSorting)return;const t=r.params.sort,o=r.params.onUpdateSort;o(t==="ASC"?{order:"DESC",columnName:r.params.displayName}:t==="DESC"?{}:{order:"ASC",columnName:r.params.displayName})};return(t,o)=>(y(),D("div",{class:"ag-header-cell-label cursor-pointer","data-ref":"eLabel",role:"presentation",onClick:n},[S("span",ma,[r.params.isPrimaryKey?(y(),k(e(fe),{key:0,name:"lucide:key-round",class:"min-w-3! text-yellow-500"})):J("",!0),r.params.isForeignKey?(y(),k(e(fe),{key:1,name:"lucide:key-round",class:"min-w-3!"})):J("",!0),P(" "+Z(r.params.displayName)+" ",1),S("p",fa,Z(r.params.dataType),1)]),t.params.sort?(y(),D("span",pa,[t.params.sort==="ASC"?(y(),D("span",ha,o[0]||(o[0]=[S("span",{class:"ag-icon ag-icon-asc",role:"presentation",unselectable:"on"},null,-1)]))):(y(),D("span",va,o[1]||(o[1]=[S("span",{class:"ag-icon ag-icon-desc",role:"presentation",unselectable:"on"},null,-1)])))])):J("",!0)]))}}),Bn=W({__name:"QuickQueryTable",props:{data:{},defaultPageSize:{},orderBy:{},foreignKeys:{},foreignKeyColumns:{},primaryKeyColumns:{},columnTypes:{},offset:{},class:{},isHaveRelationByFieldName:{type:Function},selectedColumnFieldId:{},currentTableName:{},currentSchemaName:{},selectedRows:{}},emits:["onClickOutSide","update:orderBy","onSelectedRows","onOpenBackReferencedTableModal","onFocusCell","onOpenForwardReferencedTableModal"],setup(i,{expose:r,emit:n}){const t=i,o=n,l=M(t.defaultPageSize??rt),{gridApi:s,onGridReady:a}=Yo(),c=St("agGridRef"),d=M(),u=M();co(c,b=>{o("onFocusCell",void 0),o("onClickOutSide",b)});const p=M([]),h=T(()=>(t.data??[]).map((b,O)=>({[Le]:O+t.offset+1,...b}))),{handleCellMouseOverDebounced:f,handleCellMouseDown:w}=Xo({gridApi:s,gridRef:c}),_=T(()=>new Map(t.columnTypes.map(b=>[b.name,b]))),g=b=>{var x;const O=((x=_.value.get(b))==null?void 0:x.type)||"";return["object","json","jsonb"].includes(O)},C=b=>{var ge,le,re;const{colDef:O,newValue:x,rowIndex:H}=b,$=Number(H),I=O.field,B=g(I??""),de=(((ge=_.value.get(I??""))==null?void 0:ge.type)||"")==="bool";if($!==null&&I){const A=(re=(le=t==null?void 0:t.data)==null?void 0:le[$])==null?void 0:re[I];let Q=A!==x;B&&(Q=JSON.stringify(A)!==JSON.stringify(x));const te=p.value.some(K=>K.rowId===$);let ie=B?JSON.stringify(x):x;if(ie||(ie=null),de&&(ie=!!ie),Q&&!te){p.value.push({rowId:$,changedData:{[I]:ie}});return}Q?p.value=p.value.map(K=>K.rowId===$?{...K,changedData:{...K.changedData,[I]:ie}}:K):p.value=p.value.map(K=>{if(K.rowId===$){const X=K.changedData;return delete X[I],{...K,changedData:X}}return K})}},z=T(()=>{var $;if(!(($=t.columnTypes)!=null&&$.length))return[];const b=[];b.push({colId:Le,headerName:Oo,field:Le,filter:!1,resizable:!0,editable:!1,sortable:!1,type:"indexColumn",headerComponentParams:{allowSorting:!1},pinned:"left",width:Ro});const O=new Set(t.primaryKeyColumns),x=new Set(t.foreignKeyColumns),H=new Map(t.foreignKeys.map(I=>[I.column,I]));return t.columnTypes.forEach(({name:I,type:B})=>{const V=I,de=t.orderBy.columnName===V?t.orderBy.order:void 0,ge=O.has(V),le=x.has(V),re=H.get(V),A=t.isHaveRelationByFieldName(V),Q=ge&&A||le&&re,te=["json","jsonb"].includes(B),ie={headerName:V,field:V,colId:V,filter:!1,resizable:!0,editable:!0,sortable:!1,type:"editableColumn",headerComponentParams:{allowSorting:!0,sort:de,onUpdateSort:K=>{o("update:orderBy",K)},fieldId:V,isPrimaryKey:ge,isForeignKey:le},cellRenderer:Q?da:void 0,cellRendererParams:{isPrimaryKey:Q,onOpenPreviewReverseTableModal:K=>{le&&re?o("onOpenForwardReferencedTableModal",{id:K,tableName:re.referenced_table,columnName:re.referenced_column,schemaName:re.referenced_table_schema}):o("onOpenBackReferencedTableModal",{id:K,columnName:V,tableName:t.currentTableName,schemaName:t.currentSchemaName})}},cellEditorSelector:K=>{if(te)return{component:"AgJsonCellEditor",popup:!0,popupPosition:"under"}},valueFormatter:K=>{const X=K.value;return typeof X=="number"||typeof X=="bigint"?X.toString():X===null?"NULL":te?JSON.stringify(X,null,2):X||""},valueSetter:K=>{if(te)try{const X=JSON.parse(K.newValue);return K.data[V]=X,!0}catch(X){return console.error(`Invalid JSON format in column ${V}:`,X),!1}else return K.data[V]=K.newValue,!0}};b.push(ie)}),b});function Y(b){const x=b.event.key;return["Backspace","Delete"].some(function(V){return V===x||x.toUpperCase()===V})}const ae=M({headerComponent:ga,suppressKeyboardEvent:Y}),ee=M({editableColumn:{cellStyle:b=>{const O=b.colDef.colId??"";if(!O||!t.data)return;const x=g(O??""),H=Number(b.node.id??b.node.rowIndex),$=t.data[H];if($===void 0)return{backgroundColor:"var(--color-green-200)"};const I={},B=$[O],V=b.value;(B===null||V===null)&&(I.color="var(--muted-foreground)");let de=!1;return x?de=JSON.stringify(B)!==JSON.stringify(V):de=B!==V,de?(I.backgroundColor="var(--color-orange-200)",delete I.color):I.backgroundColor="unset",I},cellClass:b=>b.column.getColId()===t.selectedColumnFieldId?"col-highlight-cell cellCenter":"cellCenter"}}),ue=T(()=>({components:{AgJsonCellEditor:es},paginationPageSize:l.value,rowBuffer:mo,rowClass:"class-row-border-none",getRowStyle:O=>{if((O.node.rowIndex||0)%2===0)return{background:"var(--color-neutral-100)"}},rowSelection:{mode:"multiRow",checkboxes:!1,headerCheckbox:!1,enableSelectionWithoutKeys:!1,enableClickSelection:"enableSelection",copySelectedRows:!1},theme:To,pagination:!1,undoRedoCellEditing:!0,undoRedoCellEditingLimit:25,animateRows:!0,onCellMouseDown:w,onCellMouseOver:f,defaultColDef:ae.value,columnTypes:ee.value})),ce=()=>{if(s.value){const b=s.value.getSelectedRows();R(b)}},R=b=>{o("onSelectedRows",b)},E=()=>{var O,x,H;const b=(O=s.value)==null?void 0:O.getFocusedCell();if(b){const $=(x=s.value)==null?void 0:x.getDisplayedRowAtIndex(b.rowIndex),I=b.column.getColId(),B=(H=$==null?void 0:$.data)==null?void 0:H[I];o("onFocusCell",B??void 0)}},q=b=>{var O,x;(O=t.selectedRows)!=null&&O.length||(x=b==null?void 0:b.node)==null||x.setSelected(!0),d.value=b},me=b=>{u.value=b};ve(()=>t.selectedColumnFieldId,async()=>{var b;await Se(),(b=s.value)==null||b.refreshCells({force:!0})},{flush:"post"});const N=()=>{if(!s.value)return;const b=s.value.getAllGridColumns()||[],O=(t.data||[]).slice(0,10),x=ko({columns:b,rows:O}),H=new Set(t.primaryKeyColumns),$=new Set(t.foreignKeyColumns);s.value.updateGridOptions({columnDefs:b.map(I=>{const B=I.getColDef().field,V=H.has(B),de=$.has(B),le=V||de?No:0;return{...I.getColDef(),width:x[B]+le}})})};return r({gridApi:s,editedCells:p,columnDefs:z,cellContextMenu:d,cellHeaderContextMenu:u,clearCellContextMenu:()=>{d.value=void 0,u.value=void 0}}),dn(async()=>{var $,I,B;if(!s.value)return;await Se();const b=s.value.getState(),O=document.querySelector(".ag-body-viewport");O&&(O.scrollTop=(($=b.scroll)==null?void 0:$.top)||0);const x=((I=s.value)==null?void 0:I.getAllGridColumns())||[];let H=0;for(const V of x){if(H>=(((B=b.scroll)==null?void 0:B.left)||0)){s.value.ensureColumnVisible(V.getColId(),"start");break}H+=V.getActualWidth()}}),(b,O)=>(y(),k(e(Zo),{onSelectionChanged:ce,onCellValueChanged:C,onGridReady:e(a),onCellFocused:E,onRowDataUpdated:N,onCellContextMenu:q,onColumnHeaderContextMenu:me,class:Re(t.class),"grid-options":e(ue),columnDefs:e(z),rowData:e(h),ref_key:"agGridRef",ref:c},null,8,["onGridReady","class","grid-options","columnDefs","rowData"]))}}),Vn=W({__name:"StructureTable",props:{schema:{},tableName:{},connectionString:{}},setup(i){const r=i,{data:n,status:t}=nt("/api/get-table-structure",{method:"POST",body:{dbConnectionString:r.connectionString,schema:r.schema,tableName:r.tableName},key:`${r.schema}.${r.tableName}`},"$ALIsatagCk"),o=T(()=>{var s,a;if(!((s=n.value)!=null&&s[0]))return[];const l=[];for(const c of Object.keys((a=n.value)==null?void 0:a[0]))l.push({isForeignKey:!1,isPrimaryKey:!1,originalName:c,queryFieldName:c,tableName:"",canMutate:!1,aliasFieldName:c});return l});return(l,s)=>{const a=_t;return y(),D(he,null,[m(a,{visible:e(t)==="pending"},null,8,["visible"]),m(e(ts),{columns:e(o),data:e(n)||[],class:"h-full border rounded-md",columnKeyBy:"field"},null,8,["columns","data"])],64)}}}),ya={class:"px-2"},ba={class:"px-2"},wa={class:"flex-1 overflow-hidden px-2 mb-0.5"},Ca={key:1,class:"h-full"},zn=W({__name:"ReferencedTable",props:{tableName:{},schemaName:{},initFilters:{}},emits:["onOpenBackReferencedTableModal","onOpenForwardReferencedTableModal"],setup(i,{emit:r}){const n=i,t=M(),o=r,{quickQueryFilterRef:l,quickQueryTableRef:s,selectedRows:a,connectionString:c,connectionId:d,workspaceId:u,focusedCell:p}=En(),{columnNames:h,foreignKeys:f,primaryKeyColumns:w,isLoadingTableSchema:_,tableMetaData:g,columnTypes:C,foreignKeyColumns:z}=An({tableName:n.tableName,schemaName:n.schemaName,connectionId:d.value}),{onApplyNewFilter:Y,data:ae,baseQueryString:ee,refreshTableData:ue,refreshCount:ce,isAllowNextPage:R,isAllowPreviousPage:E,onNextPage:q,onPreviousPage:me,onUpdatePagination:N,totalRows:F,pagination:b,errorMessage:O,openErrorModal:x,orderBy:H,onUpdateOrderBy:$,addHistoryLog:I,filters:B,isShowFilters:V,composeWith:de,onChangeComposeWith:ge,isFetchingTableData:le}=$n({connectionString:c,primaryKeys:w,columns:h,connectionId:d,workspaceId:u,tableName:n.tableName,schemaName:n.schemaName,isPersist:!1,initFilters:(n==null?void 0:n.initFilters)||[],initComposeWith:ot.OR});ve(g,oe=>{oe&&(B.value=(n==null?void 0:n.initFilters)||[],ce(),ue())},{deep:!0,immediate:!0});const{isMutating:re,onAddEmptyRow:A,onDeleteRows:Q,onSaveData:te,hasEditedRows:ie,onCopyRows:K,onPasteRows:X,onRefresh:ye,onSelectedRowsChange:We,onCopySelectedCell:He,onFocusedCellChange:Ge,onDeselectAll:Je}=Fn({tableName:n.tableName,schemaName:n.schemaName,primaryKeys:w,refreshTableData:ue,columnNames:h,data:ae,addHistoryLog:I,errorMessage:O,openErrorModal:x,selectedRows:a,pagination:b,quickQueryTableRef:s,refreshCount:ce,focusedCell:p}),Ce=M(G.Data),Ye=async()=>{var ne,pe,_e;const oe=(ne=s.value)==null?void 0:ne.cellContextMenu;if(oe){const se=oe.colDef.field||"",Xe=oe.value,Ve={fieldName:se,isSelect:!0,operator:Qe.EQUAL,search:Xe};(pe=l.value)==null||pe.insert(B.value.length,Ve),(_e=l==null?void 0:l.value)==null||_e.onShowSearch(),B.value.push(Ve),Y()}},{isHaveRelationByFieldName:it}=Nt({schemaName:n.schemaName,tableName:n.tableName}),Be=M({[G.Data]:!0,[G.Structure]:!1,[G.Erd]:!1});return ve(Ce,oe=>{Be.value[oe]=!0}),Ke([{key:"meta+a",callback:()=>{var oe,ne;(ne=(oe=s.value)==null?void 0:oe.gridApi)==null||ne.selectAll()},excludeInput:!0,isPreventDefault:!0},{key:"meta+c",callback:()=>{He()},excludeInput:!0},{key:"meta+v",callback:()=>X(),excludeInput:!0},{key:"meta+s",callback:()=>te(),isPreventDefault:!0},{key:"meta+alt+backspace",callback:()=>{Q()},isPreventDefault:!0}],{target:t}),(oe,ne)=>{var pe,_e;return y(),D(he,null,[m(In,{open:e(x),"onUpdate:open":ne[0]||(ne[0]=se=>$e(x)?x.value=se:null),message:e(O)||""},null,8,["open","message"]),S("div",{ref_key:"containerRef",ref:t,class:"flex flex-col h-full w-full relative",tabindex:"0"},[m(e(_t),{visible:e(_)||e(re)||e(le)},null,8,["visible"]),S("div",ya,[m(Pn,{"total-selected-rows":(pe=e(a))==null?void 0:pe.length,isAllowNextPage:e(R),isAllowPreviousPage:e(E),totalRows:e(F),limit:e(b).limit,currentTotalRows:((_e=e(ae))==null?void 0:_e.length)||0,offset:e(b).offset,"has-edited-rows":e(ie),onOnPaginate:e(N),onOnNextPage:e(q),onOnPreviousPage:e(me),onOnRefresh:e(ye),onOnSaveData:e(te),onOnDeleteRows:e(Q),onOnAddEmptyRow:e(A),onOnShowFilter:ne[1]||(ne[1]=async()=>{var se;await((se=e(l))==null?void 0:se.onShowSearch())}),tabView:e(Ce),"onUpdate:tabView":ne[2]||(ne[2]=se=>$e(Ce)?Ce.value=se:null)},null,8,["total-selected-rows","isAllowNextPage","isAllowPreviousPage","totalRows","limit","currentTotalRows","offset","has-edited-rows","onOnPaginate","onOnNextPage","onOnPreviousPage","onOnRefresh","onOnSaveData","onOnDeleteRows","onOnAddEmptyRow","tabView"])]),S("div",ba,[e(Ce)===e(G).Data?(y(),k(Dn,{key:0,ref_key:"quickQueryFilterRef",ref:l,onOnSearch:ne[3]||(ne[3]=()=>{e(Y)()}),onOnUpdateFilters:ne[4]||(ne[4]=se=>{B.value=se}),isShowFilters:e(V),"onUpdate:isShowFilters":ne[5]||(ne[5]=se=>$e(V)?V.value=se:null),initFilters:e(B),baseQuery:e(ee),columns:e(h),dbType:e(Rt).PG,composeWith:e(de),onOnChangeComposeWith:e(ge)},null,8,["isShowFilters","initFilters","baseQuery","columns","dbType","composeWith","onOnChangeComposeWith"])):J("",!0)]),S("div",wa,[e(Be)[e(G).Erd]?Ne((y(),k(yn,{key:0,tableId:e(wn)({tableName:oe.tableName,schemaName:oe.schemaName})},null,8,["tableId"])),[[Ae,e(Ce)===e(G).Erd]]):J("",!0),e(Be)[e(G).Structure]?Ne((y(),D("div",Ca,[m(Vn,{schema:oe.schemaName,tableName:oe.tableName,connectionString:e(c)},null,8,["schema","tableName","connectionString"])],512)),[[Ae,e(Ce)===e(G).Structure]]):J("",!0),Ne(m(Mn,{"total-selected-rows":e(a).length,"has-edited-rows":e(ie),selectedRows:e(a),"table-name":oe.tableName,isReferencedTable:"",onOnPaginate:e(N),onOnNextPage:e(q),onOnPreviousPage:e(me),onOnRefresh:e(ye),onOnSaveData:e(te),onOnDeleteRows:e(Q),onOnAddEmptyRow:e(A),onOnFilterByValue:Ye,onOnCopyRows:e(K),onOnPasteRows:e(X),onOnCopySelectedCell:e(He)},{default:v(()=>[m(Bn,{class:"h-full border rounded-md",ref_key:"quickQueryTableRef",ref:s,"selected-rows":e(a),data:e(ae)||[],orderBy:e(H),onOnSelectedRows:e(We),"onUpdate:orderBy":e($),onOnOpenBackReferencedTableModal:ne[6]||(ne[6]=se=>o("onOpenBackReferencedTableModal",se)),onOnOpenForwardReferencedTableModal:ne[7]||(ne[7]=se=>o("onOpenForwardReferencedTableModal",se)),isHaveRelationByFieldName:e(it),foreignKeyColumns:e(z),foreignKeys:e(f),primaryKeyColumns:e(w),columnTypes:e(C),defaultPageSize:e(rt),offset:e(b).offset,onOnFocusCell:e(Ge),"current-schema-name":oe.schemaName,"current-table-name":oe.tableName,onOnClickOutSide:e(Je)},null,8,["selected-rows","data","orderBy","onOnSelectedRows","onUpdate:orderBy","isHaveRelationByFieldName","foreignKeyColumns","foreignKeys","primaryKeyColumns","columnTypes","defaultPageSize","offset","onOnFocusCell","current-schema-name","current-table-name","onOnClickOutSide"])]),_:1},8,["total-selected-rows","has-edited-rows","selectedRows","table-name","onOnPaginate","onOnNextPage","onOnPreviousPage","onOnRefresh","onOnSaveData","onOnDeleteRows","onOnAddEmptyRow","onOnCopyRows","onOnPasteRows","onOnCopySelectedCell"]),[[Ae,e(Ce)===e(G).Data]])])],512)],64)}}}),Sa={class:"flex justify-between items-center gap-2 w-full"},_a={class:"relative w-full"},xa={class:"flex flex-1"},Ra=W({__name:"BackReferencedTable",props:{tableName:{},schemaName:{},columnName:{},recordId:{},selectedTab:{}},emits:["onOpenBackReferencedTableModal","onOpenForwardReferencedTableModal","update:selectedTab"],setup(i,{emit:r}){const n=i,t=r,{reverseTables:o}=Nt({schemaName:n.schemaName,tableName:n.tableName}),l=M(""),s=T(()=>{var f;const u=new Set,p=Mt((f=o.value)==null?void 0:f.used_by)||[];for(const w of p)w.referenced_column===n.columnName&&u.add(w.referencing_table);let h=[...u].sort();if(l.value){const w=l.value.toLowerCase();h=h.filter(_=>_.toLowerCase().includes(w))}return h});nn(()=>{!n.selectedTab&&s.value.length>0&&t("update:selectedTab",s.value[0])});const a=u=>{var f;if(!u)return[];const p=[],h=Mt((f=o.value)==null?void 0:f.used_by)||[];for(const w of h)if(w.referencing_table===u){const _={fieldName:w.fk_column,operator:Qe.EQUAL,search:n.recordId,isSelect:!0};p.push(_)}return p},c=u=>{t("update:selectedTab",u)},d=u=>{const p=u.target;p instanceof HTMLElement&&p.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})};return(u,p)=>{const h=kt,f=Tt,w=fe,_=xt;return y(),k(_,{"model-value":u.selectedTab,"onUpdate:modelValue":p[4]||(p[4]=g=>c(g)),class:"flex-1 flex-wrap h-full w-full"},{default:v(()=>[S("div",Sa,[m(f,{class:"overflow-x-auto w-full justify-start!"},{default:v(()=>[(y(!0),D(he,null,Oe(e(s),g=>(y(),k(h,{class:"cursor-pointer font-normal! flex-none!",onClick:d,value:g,key:g},{default:v(()=>[P(Z(g),1)]),_:2},1032,["value"]))),128))]),_:1}),S("div",null,[S("div",_a,[m(e(je),{type:"text",placeholder:"Search tables",class:"pr-6 w-48 h-8",modelValue:e(l),"onUpdate:modelValue":p[0]||(p[0]=g=>$e(l)?l.value=g:null)},null,8,["modelValue"]),e(l)?(y(),D("div",{key:0,class:"absolute right-2 top-1.5 w-4 cursor-pointer hover:bg-accent",onClick:p[1]||(p[1]=g=>l.value="")},[m(w,{name:"lucide:x",class:"stroke-3! text-muted-foreground"})])):J("",!0)])])]),S("div",xa,[(y(),k(mn,null,[(y(),k(zn,{key:u.selectedTab,tableName:u.selectedTab||"","schema-name":u.schemaName,"init-filters":a(u.selectedTab),onOnOpenBackReferencedTableModal:p[2]||(p[2]=g=>t("onOpenBackReferencedTableModal",g)),onOnOpenForwardReferencedTableModal:p[3]||(p[3]=g=>t("onOpenForwardReferencedTableModal",g))},null,8,["tableName","schema-name","init-filters"]))],1024))])]),_:1},8,["model-value"])}}}),Oa={class:"flex flex-1"},Ta=W({__name:"ForwardReferencedTable",props:{tableName:{},schemaName:{},columnName:{},recordId:{}},emits:["onOpenBackReferencedTableModal","onOpenForwardReferencedTableModal"],setup(i,{emit:r}){const n=i,t=r,o=()=>[{fieldName:n.columnName,operator:Qe.EQUAL,search:n.recordId,isSelect:!0}];return(l,s)=>(y(),D("div",Oa,[(y(),k(zn,{key:e(qe)(),tableName:l.tableName,"schema-name":l.schemaName,"init-filters":o(),onOnOpenBackReferencedTableModal:s[0]||(s[0]=a=>t("onOpenBackReferencedTableModal",a)),onOnOpenForwardReferencedTableModal:s[1]||(s[1]=a=>t("onOpenForwardReferencedTableModal",a))},null,8,["tableName","schema-name","init-filters"]))]))}}),ka={class:"flex items-center"},Na=W({__name:"PreviewRelationTable",props:{open:{type:Boolean},breadcrumbs:{},currentTableName:{}},emits:["onBackPreviousBreadcrumbByIndex","onBackPreviousBreadcrumb","clearBreadcrumb","onUpdateSelectedTabInBreadcrumb","onOpenBackReferencedTableModal","onOpenForwardReferencedTableModal"],setup(i,{emit:r}){const n=r,t=i,o=T(()=>t.breadcrumbs.length?t.breadcrumbs[t.breadcrumbs.length-1]:null),l=s=>{n("onUpdateSelectedTabInBreadcrumb",t.breadcrumbs.length-1,s)};return(s,a)=>{const c=fe,d=Te,u=ho,p=po,h=fo,f=an,w=sn;return y(),k(e(on),{open:s.open,"onUpdate:open":a[4]||(a[4]=_=>s.$emit("clearBreadcrumb"))},{default:v(()=>[m(e(ln),{class:"w-[98dvw]! max-w-[98dvw]! max-h-[95dvh] h-[95dvh] gap-1 p-3 flex flex-col flex-1 flex-wrap overflow-hidden"},{default:v(()=>{var _;return[m(w,null,{default:v(()=>[m(f,null,{default:v(()=>[S("div",ka,[m(d,{onClick:a[0]||(a[0]=g=>s.$emit("onBackPreviousBreadcrumb")),size:"iconMd",variant:"secondary"},{default:v(()=>[m(c,{name:"hugeicons:arrow-left-02",class:"size-4!"})]),_:1}),m(h,null,{default:v(()=>[m(p,{class:"gap-0.5!"},{default:v(()=>[m(e(Bt),{class:"hover:cursor-pointer"},{default:v(()=>[m(e(Qt),{onClick:a[1]||(a[1]=g=>n("clearBreadcrumb"))},{default:v(()=>[P(Z(s.currentTableName),1)]),_:1})]),_:1}),m(u),(y(!0),D(he,null,Oe(s.breadcrumbs,(g,C)=>(y(),D(he,null,[m(e(Bt),{class:Re([C!==s.breadcrumbs.length-1&&"hover:cursor-pointer"])},{default:v(()=>[C===s.breadcrumbs.length-1?(y(),k(e(vo),{key:0},{default:v(()=>[P(Z(g.type==="backReferenced"?g.selectedTab:g.tableName),1)]),_:2},1024)):(y(),k(e(Qt),{key:1,onClick:z=>n("onBackPreviousBreadcrumbByIndex",C)},{default:v(()=>[P(Z(g.type==="backReferenced"?g.selectedTab:g.tableName),1)]),_:2},1032,["onClick"]))]),_:2},1032,["class"]),C<s.breadcrumbs.length-1?(y(),k(u,{key:0})):J("",!0)],64))),256))]),_:1})]),_:1})])]),_:1})]),_:1}),(y(),k(mn,null,[e(o)?(y(),k(tn(((_=e(o))==null?void 0:_.type)==="backReferenced"?Ra:Ta),De({key:e(o).id},{columnName:e(o).columnName,recordId:e(o).recordId,schemaName:e(o).schemaName,tableName:e(o).tableName,selectedTab:e(o).selectedTab},{onOnOpenBackReferencedTableModal:a[2]||(a[2]=g=>n("onOpenBackReferencedTableModal",g)),onOnOpenForwardReferencedTableModal:a[3]||(a[3]=g=>n("onOpenForwardReferencedTableModal",g)),"onUpdate:selectedTab":l}),null,16)):J("",!0)],1024))]}),_:1})]),_:1},8,["open"])}}});function Pe(i,r,n){let t=n.initialDeps??[],o;function l(){var s,a,c,d;let u;n.key&&((s=n.debug)!=null&&s.call(n))&&(u=Date.now());const p=i();if(!(p.length!==t.length||p.some((w,_)=>t[_]!==w)))return o;t=p;let f;if(n.key&&((a=n.debug)!=null&&a.call(n))&&(f=Date.now()),o=r(...p),n.key&&((c=n.debug)!=null&&c.call(n))){const w=Math.round((Date.now()-u)*100)/100,_=Math.round((Date.now()-f)*100)/100,g=_/16,C=(z,Y)=>{for(z=String(z);z.length<Y;)z=" "+z;return z};console.info(`%c⏱ ${C(_,5)} /${C(w,5)} ms`,`
|
|
6
|
+
font-size: .6rem;
|
|
7
|
+
font-weight: bold;
|
|
8
|
+
color: hsl(${Math.max(0,Math.min(120-120*g,120))}deg 100% 31%);`,n==null?void 0:n.key)}return(d=n==null?void 0:n.onChange)==null||d.call(n,o),o}return l.updateDeps=s=>{t=s},l}function Gt(i,r){if(i===void 0)throw new Error("Unexpected undefined");return i}const $a=(i,r)=>Math.abs(i-r)<1.01,Ia=(i,r,n)=>{let t;return function(...o){i.clearTimeout(t),t=i.setTimeout(()=>r.apply(this,o),n)}},Jt=i=>{const{offsetWidth:r,offsetHeight:n}=i;return{width:r,height:n}},Aa=i=>i,Fa=i=>{const r=Math.max(i.startIndex-i.overscan,0),n=Math.min(i.endIndex+i.overscan,i.count-1),t=[];for(let o=r;o<=n;o++)t.push(o);return t},Ea=(i,r)=>{const n=i.scrollElement;if(!n)return;const t=i.targetWindow;if(!t)return;const o=s=>{const{width:a,height:c}=s;r({width:Math.round(a),height:Math.round(c)})};if(o(Jt(n)),!t.ResizeObserver)return()=>{};const l=new t.ResizeObserver(s=>{const a=()=>{const c=s[0];if(c!=null&&c.borderBoxSize){const d=c.borderBoxSize[0];if(d){o({width:d.inlineSize,height:d.blockSize});return}}o(Jt(n))};i.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(a):a()});return l.observe(n,{box:"border-box"}),()=>{l.unobserve(n)}},Yt={passive:!0},Xt=typeof window>"u"?!0:"onscrollend"in window,Pa=(i,r)=>{const n=i.scrollElement;if(!n)return;const t=i.targetWindow;if(!t)return;let o=0;const l=i.options.useScrollendEvent&&Xt?()=>{}:Ia(t,()=>{r(o,!1)},i.options.isScrollingResetDelay),s=u=>()=>{const{horizontal:p,isRtl:h}=i.options;o=p?n.scrollLeft*(h&&-1||1):n.scrollTop,l(),r(o,u)},a=s(!0),c=s(!1);c(),n.addEventListener("scroll",a,Yt);const d=i.options.useScrollendEvent&&Xt;return d&&n.addEventListener("scrollend",c,Yt),()=>{n.removeEventListener("scroll",a),d&&n.removeEventListener("scrollend",c)}},Da=(i,r,n)=>{if(r!=null&&r.borderBoxSize){const t=r.borderBoxSize[0];if(t)return Math.round(t[n.options.horizontal?"inlineSize":"blockSize"])}return i[n.options.horizontal?"offsetWidth":"offsetHeight"]},Ma=(i,{adjustments:r=0,behavior:n},t)=>{var o,l;const s=i+r;(l=(o=t.scrollElement)==null?void 0:o.scrollTo)==null||l.call(o,{[t.options.horizontal?"left":"top"]:s,behavior:n})};class Ba{constructor(r){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.measurementsCache=[],this.itemSizeCache=new Map,this.pendingMeasuredCacheIndexes=[],this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let n=null;const t=()=>n||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:n=new this.targetWindow.ResizeObserver(o=>{o.forEach(l=>{const s=()=>{this._measureElement(l.target,l)};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(s):s()})}));return{disconnect:()=>{var o;(o=t())==null||o.disconnect(),n=null},observe:o=>{var l;return(l=t())==null?void 0:l.observe(o,{box:"border-box"})},unobserve:o=>{var l;return(l=t())==null?void 0:l.unobserve(o)}}})(),this.range=null,this.setOptions=n=>{Object.entries(n).forEach(([t,o])=>{typeof o>"u"&&delete n[t]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:Aa,rangeExtractor:Fa,onChange:()=>{},measureElement:Da,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,...n}},this.notify=n=>{var t,o;(o=(t=this.options).onChange)==null||o.call(t,this,n)},this.maybeNotify=Pe(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),n=>{this.notify(n)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(n=>n()),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var n;const t=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==t){if(this.cleanup(),!t){this.maybeNotify();return}this.scrollElement=t,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((n=this.scrollElement)==null?void 0:n.window)??null,this.elementsCache.forEach(o=>{this.observer.observe(o)}),this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0}),this.unsubs.push(this.options.observeElementRect(this,o=>{this.scrollRect=o,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(o,l)=>{this.scrollAdjustments=0,this.scrollDirection=l?this.getScrollOffset()<o?"forward":"backward":null,this.scrollOffset=o,this.isScrolling=l,this.maybeNotify()}))}},this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(n,t)=>{const o=new Map,l=new Map;for(let s=t-1;s>=0;s--){const a=n[s];if(o.has(a.lane))continue;const c=l.get(a.lane);if(c==null||a.end>c.end?l.set(a.lane,a):a.end<c.end&&o.set(a.lane,!0),o.size===this.options.lanes)break}return l.size===this.options.lanes?Array.from(l.values()).sort((s,a)=>s.end===a.end?s.index-a.index:s.end-a.end)[0]:void 0},this.getMeasurementOptions=Pe(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled],(n,t,o,l,s)=>(this.pendingMeasuredCacheIndexes=[],{count:n,paddingStart:t,scrollMargin:o,getItemKey:l,enabled:s}),{key:!1}),this.getMeasurements=Pe(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:n,paddingStart:t,scrollMargin:o,getItemKey:l,enabled:s},a)=>{if(!s)return this.measurementsCache=[],this.itemSizeCache.clear(),[];this.measurementsCache.length===0&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(u=>{this.itemSizeCache.set(u.key,u.size)}));const c=this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[];const d=this.measurementsCache.slice(0,c);for(let u=c;u<n;u++){const p=l(u),h=this.options.lanes===1?d[u-1]:this.getFurthestMeasurement(d,u),f=h?h.end+this.options.gap:t+o,w=a.get(p),_=typeof w=="number"?w:this.options.estimateSize(u),g=f+_,C=h?h.lane:u%this.options.lanes;d[u]={index:u,start:f,size:_,end:g,key:p,lane:C}}return this.measurementsCache=d,d},{key:!1,debug:()=>this.options.debug}),this.calculateRange=Pe(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(n,t,o,l)=>this.range=n.length>0&&t>0?Va({measurements:n,outerSize:t,scrollOffset:o,lanes:l}):null,{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=Pe(()=>{let n=null,t=null;const o=this.calculateRange();return o&&(n=o.startIndex,t=o.endIndex),this.maybeNotify.updateDeps([this.isScrolling,n,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,n,t]},(n,t,o,l,s)=>l===null||s===null?[]:n({startIndex:l,endIndex:s,overscan:t,count:o}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=n=>{const t=this.options.indexAttribute,o=n.getAttribute(t);return o?parseInt(o,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this._measureElement=(n,t)=>{const o=this.indexFromElement(n),l=this.measurementsCache[o];if(!l)return;const s=l.key,a=this.elementsCache.get(s);a!==n&&(a&&this.observer.unobserve(a),this.observer.observe(n),this.elementsCache.set(s,n)),n.isConnected&&this.resizeItem(o,this.options.measureElement(n,t,this))},this.resizeItem=(n,t)=>{const o=this.measurementsCache[n];if(!o)return;const l=this.itemSizeCache.get(o.key)??o.size,s=t-l;s!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(o,s,this):o.start<this.getScrollOffset()+this.scrollAdjustments)&&this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=s,behavior:void 0}),this.pendingMeasuredCacheIndexes.push(o.index),this.itemSizeCache=new Map(this.itemSizeCache.set(o.key,t)),this.notify(!1))},this.measureElement=n=>{if(!n){this.elementsCache.forEach((t,o)=>{t.isConnected||(this.observer.unobserve(t),this.elementsCache.delete(o))});return}this._measureElement(n,void 0)},this.getVirtualItems=Pe(()=>[this.getVirtualIndexes(),this.getMeasurements()],(n,t)=>{const o=[];for(let l=0,s=n.length;l<s;l++){const a=n[l],c=t[a];o.push(c)}return o},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=n=>{const t=this.getMeasurements();if(t.length!==0)return Gt(t[Ln(0,t.length-1,o=>Gt(t[o]).start,n)])},this.getOffsetForAlignment=(n,t,o=0)=>{const l=this.getSize(),s=this.getScrollOffset();t==="auto"&&(t=n>=s+l?"end":"start"),t==="center"?n+=(o-l)/2:t==="end"&&(n-=l);const a=this.getTotalSize()+this.options.scrollMargin-l;return Math.max(Math.min(a,n),0)},this.getOffsetForIndex=(n,t="auto")=>{n=Math.max(0,Math.min(n,this.options.count-1));const o=this.measurementsCache[n];if(!o)return;const l=this.getSize(),s=this.getScrollOffset();if(t==="auto")if(o.end>=s+l-this.options.scrollPaddingEnd)t="end";else if(o.start<=s+this.options.scrollPaddingStart)t="start";else return[s,t];const a=t==="end"?o.end+this.options.scrollPaddingEnd:o.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t,o.size),t]},this.isDynamicMode=()=>this.elementsCache.size>0,this.scrollToOffset=(n,{align:t="start",behavior:o}={})=>{o==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(n,t),{adjustments:void 0,behavior:o})},this.scrollToIndex=(n,{align:t="auto",behavior:o}={})=>{o==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),n=Math.max(0,Math.min(n,this.options.count-1));let l=0;const s=10,a=d=>{if(!this.targetWindow)return;const u=this.getOffsetForIndex(n,d);if(!u){console.warn("Failed to get offset for index:",n);return}const[p,h]=u;this._scrollToOffset(p,{adjustments:void 0,behavior:o}),this.targetWindow.requestAnimationFrame(()=>{const f=this.getScrollOffset(),w=this.getOffsetForIndex(n,h);if(!w){console.warn("Failed to get offset for index:",n);return}$a(w[0],f)||c(h)})},c=d=>{this.targetWindow&&(l++,l<s?this.targetWindow.requestAnimationFrame(()=>a(d)):console.warn(`Failed to scroll to index ${n} after ${s} attempts.`))};a(t)},this.scrollBy=(n,{behavior:t}={})=>{t==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+n,{adjustments:void 0,behavior:t})},this.getTotalSize=()=>{var n;const t=this.getMeasurements();let o;if(t.length===0)o=this.options.paddingStart;else if(this.options.lanes===1)o=((n=t[t.length-1])==null?void 0:n.end)??0;else{const l=Array(this.options.lanes).fill(null);let s=t.length-1;for(;s>=0&&l.some(a=>a===null);){const a=t[s];l[a.lane]===null&&(l[a.lane]=a.end),s--}o=Math.max(...l.filter(a=>a!==null))}return Math.max(o-this.options.scrollMargin+this.options.paddingEnd,0)},this._scrollToOffset=(n,{adjustments:t,behavior:o})=>{this.options.scrollToFn(n,{behavior:o,adjustments:t},this)},this.measure=()=>{this.itemSizeCache=new Map,this.notify(!1)},this.setOptions(r)}}const Ln=(i,r,n,t)=>{for(;i<=r;){const o=(i+r)/2|0,l=n(o);if(l<t)i=o+1;else if(l>t)r=o-1;else return o}return i>0?i-1:0};function Va({measurements:i,outerSize:r,scrollOffset:n,lanes:t}){const o=i.length-1,l=c=>i[c].start;if(i.length<=t)return{startIndex:0,endIndex:o};let s=Ln(0,o,l,n),a=s;if(t===1)for(;a<o&&i[a].end<n+r;)a++;else if(t>1){const c=Array(t).fill(0);for(;a<o&&c.some(u=>u<n+r);){const u=i[a];c[u.lane]=u.end,a++}const d=Array(t).fill(n+r);for(;s>=0&&d.some(u=>u>=n);){const u=i[s];d[u.lane]=u.start,s--}s=Math.max(0,s-s%t),a=Math.min(o,a+(t-1-a%t))}return{startIndex:s,endIndex:a}}function za(i){const r=new Ba(e(i)),n=rn(r),t=r._didMount();return ve(()=>e(i).getScrollElement(),o=>{o&&r._willUpdate()},{immediate:!0}),ve(()=>e(i),o=>{r.setOptions({...o,onChange:(l,s)=>{var a;Vt(n),(a=o.onChange)==null||a.call(o,l,s)}}),r._willUpdate(),Vt(n)},{immediate:!0}),go(t),n}function La(i){return za(T(()=>({observeElementRect:Ea,observeElementOffset:Pa,scrollToFn:Ma,...e(i)})))}const Ua=["innerHTML"],ja=W({__name:"QuickQueryHistoryLogItem",props:{log:{},highlighter:{}},setup(i){const r=i,n=M("");return ve([()=>r.log,()=>r.highlighter],async()=>{const t=(r.log||"").trim();r.highlighter&&(n.value=r.highlighter.codeToHtml(t,{lang:"plsql",theme:"catppuccin-latte"}))},{immediate:!0}),(t,o)=>(y(),D("div",{class:"[&_code]:text-wrap w-full [&>.catppuccin-latte]:bg-background!",innerHTML:n.value},null,8,Ua))}}),Ka={class:"flex flex-1 flex-col h-full"},qa={class:"flex flex-1 h-full items-center justify-between"},Qa={class:"flex items-center gap-1"},Wa={key:0,class:"flex h-full items-center justify-center text-zinc-500"},Ha=["data-index"],Ga={class:"pb-2 leading-relaxed text-xs"},Ja={class:"text-[10px]"},Ya={class:"text-[10px]"},Xa=W({__name:"QuickQueryHistoryLogsPanel",props:{tableName:{},schemaName:{}},setup(i){const r=i,n=M("all"),t=Nn(),{getLogsByTableId:o,qqLogs:l}=Fe(t),s=T(()=>n.value==="all"?l.value:o.value(r)),a=St("wrapperRef"),{height:c}=yo(a),d=M(null),u=La({get count(){return s.value.length},getScrollElement:()=>d.value,estimateSize:()=>39}),p=T(()=>u.value.getVirtualItems()),h=T(()=>u.value.getTotalSize()),f=g=>{g&&u.value.measureElement(g)},w=g=>new Date(g).toLocaleString(),_=M();return bo(async()=>{const g=Ko({themes:[Ho],langs:[Wo],engine:qo()});_.value=await g}),wo(async()=>{u.value&&(await Se(),u.value.scrollToIndex(s.value.length-1))}),ve(()=>s.value,async()=>{u.value&&(await Se(),u.value.scrollToIndex(s.value.length-1))},{deep:!0}),(g,C)=>{const z=kt,Y=Tt,ae=xt,ee=fe,ue=Te,ce=hn,R=pn;return y(),D("div",Ka,[S("div",qa,[m(ae,{modelValue:n.value,"onUpdate:modelValue":C[0]||(C[0]=E=>n.value=E),class:"pt-1"},{default:v(()=>[m(Y,{class:"grid grid-cols-2 h-[1.625rem]!"},{default:v(()=>[m(z,{value:"all",class:"h-5! px-1 font-medium text-xs cursor-pointer text-primary/80"},{default:v(()=>C[2]||(C[2]=[P(" All logs ")])),_:1},8,["value"]),m(z,{value:"one-table",class:"h-5! px-1 font-medium text-xs cursor-pointer text-primary/80"},{default:v(()=>C[3]||(C[3]=[P(" Only this table ")])),_:1},8,["value"])]),_:1})]),_:1},8,["modelValue"]),C[6]||(C[6]=S("div",null,[S("p",{class:"font-medium text-xs"},"Logs history")],-1)),S("div",Qa,[n.value==="all"?(y(),k(ue,{key:0,variant:"outline",size:"sm",class:"h-6 px-1 gap-1 text-xs",onClick:e(t).deleteAllLogs},{default:v(()=>[m(ee,{name:"lucide:trash"}),C[4]||(C[4]=S("p",{class:"font-normal"},"Delete all logs",-1))]),_:1},8,["onClick"])):(y(),k(ue,{key:1,variant:"outline",size:"sm",class:"h-6 px-1 gap-1 text-xs",onClick:C[1]||(C[1]=E=>e(t).deleteLogsOfTable(r))},{default:v(()=>[m(ee,{name:"lucide:trash"}),C[5]||(C[5]=S("p",{class:"font-normal"},"Delete logs",-1))]),_:1}))])]),s.value.length?(y(),k(R,{key:1,class:"py-0 mt-1 h-full rounded-none shadow-none border-none overflow-auto",ref_key:"wrapperRef",ref:a},{default:v(()=>[m(ce,{class:"p-0"},{default:v(()=>{var E;return[S("div",{ref_key:"parentRef",ref:d,style:tt({height:`${e(c)}px`}),class:"w-full overflow-y-auto contain-strict h-full"},[S("div",{style:tt({height:`${h.value}px`,width:"100%",position:"relative"})},[S("div",{style:tt({position:"absolute",top:0,left:0,width:"100%",transform:`translateY(${((E=p.value[0])==null?void 0:E.start)??0}px)`})},[(y(!0),D(he,null,Oe(p.value,q=>(y(),D("div",{key:q.key.toString(),"data-index":q.index,ref_for:!0,ref:f},[S("div",Ga,[S("span",Ja,"["+Z(w(s.value[q.index].createdAt))+"] ",1),S("span",Ya," : "+Z(e(Qo)(s.value[q.index].queryTime||0)),1),m(ja,{highlighter:_.value,log:s.value[q.index].logs},null,8,["highlighter","log"])])],8,Ha))),128))],4)],4)],4)]}),_:1})]),_:1},512)):(y(),D("div",Wa," No logs to display "))])}}}),Za=({quickQueryTableRef:i})=>{const r=M(void 0),n=()=>{var l,s,a,c,d,u,p;r.value=void 0,(a=(s=(l=i.value)==null?void 0:l.gridApi)==null?void 0:s.ensureIndexVisible)==null||a.call(s,0,"top"),(d=(c=i.value)==null?void 0:c.gridApi)==null||d.refreshHeader(),(p=(u=i.value)==null?void 0:u.gridApi)==null||p.refreshCells({force:!0})},t=l=>{var s,a,c,d,u,p;l&&((a=(s=i.value)==null?void 0:s.gridApi)==null||a.ensureColumnVisible(l,"middle"),(d=(c=i.value)==null?void 0:c.gridApi)==null||d.refreshCells({force:!0}),(p=(u=i.value)==null?void 0:u.gridApi)==null||p.refreshHeader())};return{resetGridState:n,selectedColumnFieldId:r,handleSelectColumn:l=>{r.value=l,t(l)}}},el={class:"px-1"},tl={class:"px-2"},nl={class:"flex-1 overflow-hidden px-1 mb-0.5"},ol={key:1,class:"h-full"},sl=W({__name:"QuickQuery",props:{tabViewId:{}},setup(i){const r=i,n=cn(),{tabViewStore:t}=Me(),{tabViews:o}=Fe(t),l=T(()=>{var L;return((L=o.value.find(U=>U.id===r.tabViewId))==null?void 0:L.tableName)||""}),s=T(()=>{var L;return((L=o.value.find(U=>U.id===r.tabViewId))==null?void 0:L.schemaId)||""}),a=M([]),c=M(),{quickQueryFilterRef:d,quickQueryTableRef:u,selectedRows:p,connectionString:h,connectionId:f,workspaceId:w,focusedCell:_}=En(),{columnNames:g,foreignKeys:C,primaryKeyColumns:z,isLoadingTableSchema:Y,tableMetaData:ae,columnTypes:ee,foreignKeyColumns:ue}=An({tableName:l.value,schemaName:s.value,connectionId:f.value}),{onApplyNewFilter:ce,data:R,baseQueryString:E,refreshTableData:q,refreshCount:me,isAllowNextPage:N,isAllowPreviousPage:F,onNextPage:b,onPreviousPage:O,onUpdatePagination:x,totalRows:H,pagination:$,errorMessage:I,openErrorModal:B,orderBy:V,onUpdateOrderBy:de,addHistoryLog:ge,filters:le,isShowFilters:re,onChangeComposeWith:A,composeWith:Q,isFetchingTableData:te}=$n({connectionString:h,primaryKeys:z,columns:g,connectionId:f,workspaceId:w,tableName:l.value,schemaName:s.value});ve(ae,L=>{var U;((U=L==null?void 0:L.columns)==null?void 0:U.length)>0&&(me(),q())},{deep:!0,immediate:!0});const{isMutating:ie,onAddEmptyRow:K,onDeleteRows:X,onSaveData:ye,hasEditedRows:We,onCopyRows:He,onPasteRows:Ge,onRefresh:Je,onSelectedRowsChange:Ce,onCopySelectedCell:Ye,onFocusedCellChange:it}=Fn({tableName:l.value,schemaName:s.value,primaryKeys:z,refreshTableData:q,columnNames:g,data:R,addHistoryLog:ge,errorMessage:I,openErrorModal:B,selectedRows:p,pagination:$,quickQueryTableRef:u,refreshCount:me,focusedCell:_}),{handleSelectColumn:Be,selectedColumnFieldId:oe,resetGridState:ne}=Za({quickQueryTableRef:u}),pe=M(G.Data),_e=M({[G.Data]:!0,[G.Structure]:!1,[G.Erd]:!1}),se=M(!0);dn(()=>{se.value=!0}),Co(()=>{se.value=!1});const Xe=({id:L,tableName:U,columnName:xe,schemaName:be})=>{a.value.push({id:qe(),type:"backReferenced",schemaName:be,tableName:U,columnName:xe,recordId:L})},Ve=({id:L,tableName:U,columnName:xe,schemaName:be})=>{a.value.push({id:qe(),type:"forwardReferenced",schemaName:be,tableName:U,columnName:xe,recordId:L})},Un=async()=>{var U,xe,be;const L=(U=u.value)==null?void 0:U.cellContextMenu;if(L){const Ze=L.colDef.field||"",et=L.value,ze={fieldName:Ze,isSelect:!0,operator:Qe.EQUAL,search:et};(xe=d.value)==null||xe.insert(le.value.length,ze),(be=d==null?void 0:d.value)==null||be.onShowSearch(),le.value.push(ze),ce()}},{isHaveRelationByFieldName:jn}=Nt({schemaName:s.value,tableName:l.value});ve(pe,L=>{_e.value[L]=!0,L!==G.Data&&n.onCloseBottomPanel()});const Ee=T(()=>a.value.length>0);Ke([{key:"meta+a",callback:()=>{var L,U;Ee.value||(U=(L=u.value)==null?void 0:L.gridApi)==null||U.selectAll()},excludeInput:!0,isPreventDefault:!0},{key:"meta+c",callback:()=>{Ee.value||Ye()},excludeInput:!0},{key:"meta+v",callback:()=>{Ee.value||Ge()},excludeInput:!0},{key:"meta+s",callback:()=>{Ee.value||ye()},isPreventDefault:!0},{key:"meta+alt+backspace",callback:()=>{Ee.value||X()},isPreventDefault:!0}],{target:c}),Ke([{key:"meta+f",callback:async()=>{var L;Ee.value||await((L=d.value)==null?void 0:L.onShowSearch())}}]);const $t=M();ve(()=>{var L;return(L=u.value)==null?void 0:L.columnDefs},()=>{var L,U;(L=u.value)!=null&&L.columnDefs&&($t.value=(U=u.value)==null?void 0:U.columnDefs)},{immediate:!0,deep:!0});const Kn=(L,U)=>{a.value[L]&&(a.value[L].selectedTab=U)},qn=()=>{a.value=[]},Qn=()=>{a.value.pop()},Wn=L=>{const U=a.value.filter((xe,be)=>be<=L);a.value=U};return(L,U)=>{var be,Ze,et,ze,It,At;const xe=_t;return y(),D(he,null,[e(a).length?(y(),k(Na,{key:0,open:e(a).length>0,breadcrumbs:e(a),currentTableName:e(l),onClearBreadcrumb:qn,onOnOpenBackReferencedTableModal:Xe,onOnOpenForwardReferencedTableModal:Ve,onOnUpdateSelectedTabInBreadcrumb:Kn,onOnBackPreviousBreadcrumb:Qn,onOnBackPreviousBreadcrumbByIndex:Wn},null,8,["open","breadcrumbs","currentTableName"])):J("",!0),e(se)?(y(),k(zt,{key:1,defer:"",to:"#preview-select-row"},[((be=e(p))==null?void 0:be.length)!==1||e(pe)!==e(G).Data?(y(),k(Rs,{key:0,"table-name":e(l),"schema-name":e(s),columns:e($t),columnTypes:e(ee),selectedColumnFieldId:e(oe),handleSelectColumn:e(Be),onResetSelectedCol:e(ne)},null,8,["table-name","schema-name","columns","columnTypes","selectedColumnFieldId","handleSelectColumn","onResetSelectedCol"])):(y(),k(Ds,{key:1,columnTypes:e(ee),selectedRow:(Ze=e(p))!=null&&Ze.length?e(p)[0]:null},null,8,["columnTypes","selectedRow"]))])):J("",!0),e(se)?(y(),k(zt,{key:2,defer:"",to:"#bottom-panel"},[m(Xa,{tableName:e(l),"schema-name":e(s)},null,8,["tableName","schema-name"])])):J("",!0),m(In,{open:e(B),"onUpdate:open":U[0]||(U[0]=we=>$e(B)?B.value=we:null),message:e(I)||""},null,8,["open","message"]),S("div",{ref_key:"containerRef",ref:c,class:"flex flex-col h-full w-full relative",tabindex:"0"},[m(xe,{visible:e(Y)||e(ie)||e(te)},null,8,["visible"]),S("div",el,[m(Pn,{"total-selected-rows":(et=e(p))==null?void 0:et.length,isAllowNextPage:e(N),isAllowPreviousPage:e(F),totalRows:e(H),limit:e($).limit,currentTotalRows:((ze=e(R))==null?void 0:ze.length)||0,offset:e($).offset,"has-edited-rows":e(We),onOnPaginate:e(x),onOnNextPage:e(b),onOnPreviousPage:e(O),onOnRefresh:e(Je),onOnSaveData:e(ye),onOnDeleteRows:e(X),onOnAddEmptyRow:e(K),onOnShowFilter:U[1]||(U[1]=()=>{var we;(we=e(d))==null||we.onShowSearch()}),onOnToggleHistoryPanel:e(n).onToggleBottomPanel,tabView:e(pe),"onUpdate:tabView":U[2]||(U[2]=we=>$e(pe)?pe.value=we:null)},null,8,["total-selected-rows","isAllowNextPage","isAllowPreviousPage","totalRows","limit","currentTotalRows","offset","has-edited-rows","onOnPaginate","onOnNextPage","onOnPreviousPage","onOnRefresh","onOnSaveData","onOnDeleteRows","onOnAddEmptyRow","onOnToggleHistoryPanel","tabView"])]),S("div",tl,[e(pe)===e(G).Data?(y(),k(Dn,{key:0,ref_key:"quickQueryFilterRef",ref:d,onOnSearch:U[3]||(U[3]=()=>{e(ce)()}),onOnUpdateFilters:U[4]||(U[4]=we=>{le.value=we}),isShowFilters:e(re),"onUpdate:isShowFilters":U[5]||(U[5]=we=>$e(re)?re.value=we:null),initFilters:e(le),baseQuery:e(E),columns:e(g),dbType:e(Rt).PG,composeWith:e(Q),onOnChangeComposeWith:e(A)},null,8,["isShowFilters","initFilters","baseQuery","columns","dbType","composeWith","onOnChangeComposeWith"])):J("",!0)]),S("div",nl,[e(_e)[e(G).Erd]?Ne((y(),k(yn,{key:0,tableId:e(wn)({tableName:e(l),schemaName:e(s)})},null,8,["tableId"])),[[Ae,e(pe)===e(G).Erd]]):J("",!0),e(_e)[e(G).Structure]?Ne((y(),D("div",ol,[m(Vn,{schema:e(s),tableName:e(l),connectionString:e(h)},null,8,["schema","tableName","connectionString"])],512)),[[Ae,e(pe)===e(G).Structure]]):J("",!0),Ne(m(Mn,{data:e(R),"total-selected-rows":e(p).length,"has-edited-rows":e(We),cellContextMenu:(It=e(u))==null?void 0:It.cellContextMenu,cellHeaderContextMenu:(At=e(u))==null?void 0:At.cellHeaderContextMenu,selectedRows:e(p),"table-name":e(l),onOnClearContextMenu:U[6]||(U[6]=we=>{var Ft;return(Ft=e(u))==null?void 0:Ft.clearCellContextMenu()}),onOnPaginate:e(x),onOnNextPage:e(b),onOnPreviousPage:e(O),onOnRefresh:e(Je),onOnSaveData:e(ye),onOnDeleteRows:e(X),onOnAddEmptyRow:e(K),onOnFilterByValue:Un,onOnCopyRows:e(He),onOnPasteRows:e(Ge),onOnCopySelectedCell:e(Ye)},{default:v(()=>[m(Bn,{class:"h-full border rounded-md",ref_key:"quickQueryTableRef",ref:u,"selected-rows":e(p),data:e(R)||[],orderBy:e(V),onOnSelectedRows:e(Ce),"onUpdate:orderBy":e(de),onOnOpenBackReferencedTableModal:Xe,onOnOpenForwardReferencedTableModal:Ve,isHaveRelationByFieldName:e(jn),foreignKeyColumns:e(ue),foreignKeys:e(C),primaryKeyColumns:e(z),columnTypes:e(ee),defaultPageSize:e(rt),offset:e($).offset,onOnFocusCell:e(it),selectedColumnFieldId:e(oe),"current-schema-name":e(s),"current-table-name":e(l)},null,8,["selected-rows","data","orderBy","onOnSelectedRows","onUpdate:orderBy","isHaveRelationByFieldName","foreignKeyColumns","foreignKeys","primaryKeyColumns","columnTypes","defaultPageSize","offset","onOnFocusCell","selectedColumnFieldId","current-schema-name","current-table-name"])]),_:1},8,["data","total-selected-rows","has-edited-rows","cellContextMenu","cellHeaderContextMenu","selectedRows","table-name","onOnPaginate","onOnNextPage","onOnPreviousPage","onOnRefresh","onOnSaveData","onOnDeleteRows","onOnAddEmptyRow","onOnCopyRows","onOnPasteRows","onOnCopySelectedCell"]),[[Ae,e(pe)===e(G).Data]])])],512)],64)}}}),Nl=W({__name:"[tabViewId]",setup(i){const r=So();return(n,t)=>(y(),k(sl,{"tab-view-id":e(r).params.tabViewId},null,8,["tab-view-id"]))}});export{Nl as default};
|