planche 0.8.9 → 0.8.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/app/assets/{UGuu7cOY.js → -hNDclQL.js} +1 -1
  2. package/app/assets/{DAUuHfyN.js → B4Yy1mj_.js} +1 -1
  3. package/app/assets/{B7JLTli_.js → B_zZh5dR.js} +1 -1
  4. package/app/assets/{D2EB63gp.js → BeiubXnY.js} +1 -1
  5. package/app/assets/{C9ZwrwyI.js → Bg6u9htc.js} +3 -3
  6. package/app/assets/{uyVrOXnR.js → BjkAHEsD.js} +1 -1
  7. package/app/assets/{BfY73pVp.js → Bn-kznw7.js} +1 -1
  8. package/app/assets/{Bu3NeYhP.js → Bp0UhSMs.js} +1 -1
  9. package/app/assets/{CPDztxpU.js → ByHW6Lyi.js} +1 -1
  10. package/app/assets/{CcaPuBtD.js → BzhSva5M.js} +1 -1
  11. package/app/assets/{BViMbHhN.js → C5VVaHNf.js} +1 -1
  12. package/app/assets/{i9HQm_wt.js → C9rqYcV-.js} +1 -1
  13. package/app/assets/{DRC6R4LY.js → CC5k5YaI.js} +1 -1
  14. package/app/assets/{-gVBPNvj.js → CGvlSihl.js} +1 -1
  15. package/app/assets/{D8yni7Rb.js → CPX5LuC-.js} +1 -1
  16. package/app/assets/{BctsL19F.js → CUQISMvX.js} +1 -1
  17. package/app/assets/{DX2KwjN1.js → ClUjvL-2.js} +1 -1
  18. package/app/assets/{Ba8hC_60.js → CnInyuhK.js} +1 -1
  19. package/app/assets/{Q_64Qxfg.js → CoI4rONw.js} +1 -1
  20. package/app/assets/{D6_0v-T4.js → CtU21VEz.js} +1 -1
  21. package/app/assets/{dOd6HlUu.js → D6tNbIL6.js} +1 -1
  22. package/app/assets/{DITt-Ko_.js → DERfOWZ5.js} +1 -1
  23. package/app/assets/{ROGURMs5.js → DInfC28p.js} +1 -1
  24. package/app/assets/{BkknF5iB.js → DM33HLij.js} +1 -1
  25. package/app/assets/{CQ-2_uhn.js → DSx167Dy.js} +1 -1
  26. package/app/assets/{DyCj9S7N.js → DYuA_YQr.js} +1 -1
  27. package/app/assets/{BVMdJAj-.js → DjDcAaBy.js} +2 -2
  28. package/app/assets/{nKNVMt3o.js → DnJeTfn9.js} +2 -2
  29. package/app/assets/{KG-rIdVk.js → DqoiWQxk.js} +1 -1
  30. package/app/assets/{-G3y8cdl.js → GwHHKhHq.js} +1 -1
  31. package/app/assets/{BjSZf__h.js → Ik6Uk6MY.js} +1 -1
  32. package/app/assets/{CQSJHI2h.js → Svdye2Hc.js} +1 -1
  33. package/app/assets/{O5A2XfFn.js → aP_gLLGt.js} +1 -1
  34. package/app/assets/{D65aoEiU.js → lui9VgkF.js} +1 -1
  35. package/app/assets/{DtHLqL7d.js → mIcOy4nG.js} +1 -1
  36. package/app/assets/{SwQn7uFS.js → ufiABG3J.js} +1 -1
  37. package/app/index.html +3 -3
  38. package/package.json +1 -1
@@ -1 +1 @@
1
- import{r as e}from"./hePW80VL.js";import{c as t,h as n,n as r}from"./BkIkgVK5.js";import{a as i,f as a,l as o,m as s,o as c,s as l}from"./C0O3rJzW.js";import{r as u,t as d}from"./BAZqI8g_.js";import{_ as f,a as p,o as m,r as h,t as g}from"./CaoceGhm.js";import{t as _}from"./DC8XCjJ3.js";import{n as v,r as y}from"./DP94Ond0.js";import{n as b,t as ee}from"./dMlgA_r1.js";import{n as x,t as S}from"./Dd9quIZg.js";import{c as C,i as w}from"./nKNVMt3o.js";import{$ as T,At as te,Ct as E,Et as D,Ht as O,I as ne,J as k,Mt as A,Nt as j,Ot as M,Q as N,Rt as P,St as F,Tt as I,V as re,Z as ie,_t as ae,dt as oe,et as se,ft as ce,gt as le,pt as ue,q as de,st as fe,ut as pe,vt as me,wt as he,xt as ge,yt as _e,z as ve}from"./C9ZwrwyI.js";import{a as ye,n as L,o as be,r as xe,t as Se}from"./Cg4DfVr4.js";var Ce=i(`book-open`,[[`path`,{d:`M12 7v14`,key:`1akyts`}],[`path`,{d:`M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z`,key:`ruj8y`}]]),we=i(`copy-plus`,[[`line`,{x1:`15`,x2:`15`,y1:`12`,y2:`18`,key:`1p7wdc`}],[`line`,{x1:`12`,x2:`18`,y1:`15`,y2:`15`,key:`1nscbv`}],[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),Te=i(`corner-down-left`,[[`path`,{d:`M20 4v7a4 4 0 0 1-4 4H4`,key:`6o5b7l`}],[`path`,{d:`m9 10-5 5 5 5`,key:`1kshq7`}]]),Ee=i(`database-zap`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 15 21.84`,key:`14ibmq`}],[`path`,{d:`M21 5V8`,key:`1marbg`}],[`path`,{d:`M21 12L18 17H22L19 22`,key:`zafso`}],[`path`,{d:`M3 12A9 3 0 0 0 14.59 14.87`,key:`1y4wr8`}]]),De=i(`file-code`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12.5 8 15l2 2.5`,key:`1tg20x`}],[`path`,{d:`m14 12.5 2 2.5-2 2.5`,key:`yinavb`}]]),Oe=i(`file-spreadsheet`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M8 13h2`,key:`yr2amv`}],[`path`,{d:`M14 13h2`,key:`un5t4a`}],[`path`,{d:`M8 17h2`,key:`2yhykz`}],[`path`,{d:`M14 17h2`,key:`10kma7`}]]),ke=i(`git-compare`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`path`,{d:`M11 18H8a2 2 0 0 1-2-2V9`,key:`19pyzm`}]]),Ae=i(`git-compare-arrows`,[[`circle`,{cx:`5`,cy:`6`,r:`3`,key:`1qnov2`}],[`path`,{d:`M12 6h5a2 2 0 0 1 2 2v7`,key:`1yj91y`}],[`path`,{d:`m15 9-3-3 3-3`,key:`1lwv8l`}],[`circle`,{cx:`19`,cy:`18`,r:`3`,key:`1qljk2`}],[`path`,{d:`M12 18H7a2 2 0 0 1-2-2V9`,key:`16sdep`}],[`path`,{d:`m9 15 3 3-3 3`,key:`1m3kbl`}]]),je=i(`history`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}],[`path`,{d:`M12 7v5l4 2`,key:`1fdv2h`}]]),Me=i(`languages`,[[`path`,{d:`m5 8 6 6`,key:`1wu5hv`}],[`path`,{d:`m4 14 6-6 2-3`,key:`1k1g8d`}],[`path`,{d:`M2 5h12`,key:`or177f`}],[`path`,{d:`M7 2h1`,key:`1t2jsx`}],[`path`,{d:`m22 22-5-10-5 10`,key:`don7ne`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),Ne=i(`network`,[[`rect`,{x:`16`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`4q2zg0`}],[`rect`,{x:`2`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`8cvhb9`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`6`,rx:`1`,key:`1egb70`}],[`path`,{d:`M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3`,key:`1jsf9p`}],[`path`,{d:`M12 12V8`,key:`2874zd`}]]),Pe=i(`plug`,[[`path`,{d:`M12 22v-5`,key:`1ega77`}],[`path`,{d:`M15 8V2`,key:`18g5xt`}],[`path`,{d:`M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z`,key:`1xoxul`}],[`path`,{d:`M9 8V2`,key:`14iosj`}]]),Fe=i(`replace`,[[`path`,{d:`M14 4a1 1 0 0 1 1-1`,key:`dhj8ez`}],[`path`,{d:`M15 10a1 1 0 0 1-1-1`,key:`1mnyi5`}],[`path`,{d:`M21 4a1 1 0 0 0-1-1`,key:`sfs9ap`}],[`path`,{d:`M21 9a1 1 0 0 1-1 1`,key:`mp6qeo`}],[`path`,{d:`m3 7 3 3 3-3`,key:`x25e72`}],[`path`,{d:`M6 10V5a2 2 0 0 1 2-2h2`,key:`15xut4`}],[`rect`,{x:`3`,y:`14`,width:`7`,height:`7`,rx:`1`,key:`1bkyp8`}]]),Ie=i(`rocket`,[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]),Le=i(`scale`,[[`path`,{d:`M12 3v18`,key:`108xh3`}],[`path`,{d:`m19 8 3 8a5 5 0 0 1-6 0zV7`,key:`zcdpyk`}],[`path`,{d:`M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1`,key:`1yorad`}],[`path`,{d:`m5 8 3 8a5 5 0 0 1-6 0zV7`,key:`eua70x`}],[`path`,{d:`M7 21h10`,key:`1b0cd5`}]]),Re=i(`scroll-text`,[[`path`,{d:`M15 12h-5`,key:`r7krc0`}],[`path`,{d:`M15 8h-5`,key:`1khuty`}],[`path`,{d:`M19 17V5a2 2 0 0 0-2-2H4`,key:`zz82l3`}],[`path`,{d:`M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3`,key:`1ph1d7`}]]),ze=i(`settings-2`,[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]),Be=i(`shield-alert`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M12 8v4`,key:`1got3b`}],[`path`,{d:`M12 16h.01`,key:`1drbdi`}]]),Ve=i(`waypoints`,[[`path`,{d:`m10.586 5.414-5.172 5.172`,key:`4mc350`}],[`path`,{d:`m18.586 13.414-5.172 5.172`,key:`8c96vv`}],[`path`,{d:`M6 12h12`,key:`8npq4p`}],[`circle`,{cx:`12`,cy:`20`,r:`2`,key:`144qzu`}],[`circle`,{cx:`12`,cy:`4`,r:`2`,key:`muu5ef`}],[`circle`,{cx:`20`,cy:`12`,r:`2`,key:`1xzzfp`}],[`circle`,{cx:`4`,cy:`12`,r:`2`,key:`1hvhnz`}]]),R=e(n(),1),He=1,Ue=.9,We=.8,Ge=.17,z=.1,B=.999,Ke=.9999,V=.99,H=/[\\\/_+.#"@\[\(\{&]/,qe=/[\\\/_+.#"@\[\(\{&]/g,Je=/[\s-]/,Ye=/[\s-]/g;function U(e,t,n,r,i,a,o){if(a===t.length)return i===e.length?He:V;var s=`${i},${a}`;if(o[s]!==void 0)return o[s];for(var c=r.charAt(a),l=n.indexOf(c,i),u=0,d,f,p,m;l>=0;)d=U(e,t,n,r,l+1,a+1,o),d>u&&(l===i?d*=He:H.test(e.charAt(l-1))?(d*=We,p=e.slice(i,l-1).match(qe),p&&i>0&&(d*=B**+p.length)):Je.test(e.charAt(l-1))?(d*=Ue,m=e.slice(i,l-1).match(Ye),m&&i>0&&(d*=B**+m.length)):(d*=Ge,i>0&&(d*=B**+(l-i))),e.charAt(l)!==t.charAt(a)&&(d*=Ke)),(d<z&&n.charAt(l-1)===r.charAt(a+1)||r.charAt(a+1)===r.charAt(a)&&n.charAt(l-1)!==r.charAt(a))&&(f=U(e,t,n,r,l+1,a+2,o),f*z>d&&(d=f*z)),d>u&&(u=d),l=n.indexOf(c,l+1);return o[s]=u,u}function Xe(e){return e.toLowerCase().replace(Ye,` `)}function Ze(e,t,n){return e=n&&n.length>0?`${e+` `+n.join(` `)}`:e,U(e,t,Xe(e),Xe(t),0,0,{})}var W=`[cmdk-group=""]`,Qe=`[cmdk-group-items=""]`,$e=`[cmdk-group-heading=""]`,et=`[cmdk-item=""]`,tt=`${et}:not([aria-disabled="true"])`,nt=`cmdk-item-select`,G=`data-value`,rt=(e,t,n)=>Ze(e,t,n),it=R.createContext(void 0),K=()=>R.useContext(it),at=R.createContext(void 0),q=()=>R.useContext(at),ot=R.createContext(void 0),st=R.forwardRef((e,t)=>{let n=X(()=>({search:``,value:e.value??e.defaultValue??``,selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}})),r=X(()=>new Set),i=X(()=>new Map),a=X(()=>new Map),o=X(()=>new Set),s=vt(e),{label:c,children:u,value:d,onValueChange:p,filter:m,shouldFilter:h,loop:g,disablePointerSelection:_=!1,vimBindings:v=!0,...y}=e,b=f(),ee=f(),x=f(),S=R.useRef(null),C=bt();Y(()=>{if(d!==void 0){let e=d.trim();n.current.value=e,w.emit()}},[d]),Y(()=>{C(6,ne)},[]);let w=R.useMemo(()=>({subscribe:e=>(o.current.add(e),()=>o.current.delete(e)),snapshot:()=>n.current,setState:(e,t,r)=>{var i,a,o;if(!Object.is(n.current[e],t)){if(n.current[e]=t,e===`search`)O(),E(),C(1,D);else if(e===`value`){if(document.activeElement.hasAttribute(`cmdk-input`)||document.activeElement.hasAttribute(`cmdk-root`)){let e=document.getElementById(x);e?e.focus():(i=document.getElementById(b))==null||i.focus()}if(C(7,()=>{n.current.selectedItemId=k()?.id,w.emit()}),r||C(5,ne),s.current?.value!==void 0){let e=t??``;(o=(a=s.current).onValueChange)==null||o.call(a,e);return}}w.emit()}},emit:()=>{o.current.forEach(e=>e())}}),[]),T=R.useMemo(()=>({value:(e,t,r)=>{t!==a.current.get(e)?.value&&(a.current.set(e,{value:t,keywords:r}),n.current.filtered.items.set(e,te(t,r)),C(2,()=>{E(),w.emit()}))},item:(e,t)=>(r.current.add(e),t&&(i.current.has(t)?i.current.get(t).add(e):i.current.set(t,new Set([e]))),C(3,()=>{O(),E(),n.current.value||D(),w.emit()}),()=>{a.current.delete(e),r.current.delete(e),n.current.filtered.items.delete(e);let t=k();C(4,()=>{O(),t?.getAttribute(`id`)===e&&D(),w.emit()})}),group:e=>(i.current.has(e)||i.current.set(e,new Set),()=>{a.current.delete(e),i.current.delete(e)}),filter:()=>s.current.shouldFilter,label:c||e[`aria-label`],getDisablePointerSelection:()=>s.current.disablePointerSelection,listId:b,inputId:x,labelId:ee,listInnerRef:S}),[]);function te(e,t){let r=s.current?.filter??rt;return e?r(e,n.current.search,t):0}function E(){if(!n.current.search||s.current.shouldFilter===!1)return;let e=n.current.filtered.items,t=[];n.current.filtered.groups.forEach(n=>{let r=i.current.get(n),a=0;r.forEach(t=>{let n=e.get(t);a=Math.max(n,a)}),t.push([n,a])});let r=S.current;A().sort((t,n)=>{let r=t.getAttribute(`id`),i=n.getAttribute(`id`);return(e.get(i)??0)-(e.get(r)??0)}).forEach(e=>{let t=e.closest(Qe);t?t.appendChild(e.parentElement===t?e:e.closest(`${Qe} > *`)):r.appendChild(e.parentElement===r?e:e.closest(`${Qe} > *`))}),t.sort((e,t)=>t[1]-e[1]).forEach(e=>{let t=S.current?.querySelector(`${W}[${G}="${encodeURIComponent(e[0])}"]`);t?.parentElement.appendChild(t)})}function D(){let e=A().find(e=>e.getAttribute(`aria-disabled`)!==`true`)?.getAttribute(G);w.setState(`value`,e||void 0)}function O(){if(!n.current.search||s.current.shouldFilter===!1){n.current.filtered.count=r.current.size;return}n.current.filtered.groups=new Set;let e=0;for(let t of r.current){let r=te(a.current.get(t)?.value??``,a.current.get(t)?.keywords??[]);n.current.filtered.items.set(t,r),r>0&&e++}for(let[e,t]of i.current)for(let r of t)if(n.current.filtered.items.get(r)>0){n.current.filtered.groups.add(e);break}n.current.filtered.count=e}function ne(){var e;let t=k();t&&(t.parentElement?.firstChild===t&&((e=t.closest(W)?.querySelector($e))==null||e.scrollIntoView({block:`nearest`})),t.scrollIntoView({block:`nearest`}))}function k(){return S.current?.querySelector(`${et}[aria-selected="true"]`)}function A(){return Array.from(S.current?.querySelectorAll(tt)||[])}function j(e){let t=A()[e];t&&w.setState(`value`,t.getAttribute(G))}function M(e){var t;let n=k(),r=A(),i=r.findIndex(e=>e===n),a=r[i+e];(t=s.current)!=null&&t.loop&&(a=i+e<0?r[r.length-1]:i+e===r.length?r[0]:r[i+e]),a&&w.setState(`value`,a.getAttribute(G))}function N(e){let t=k()?.closest(W),n;for(;t&&!n;)t=e>0?gt(t,W):_t(t,W),n=t?.querySelector(tt);n?w.setState(`value`,n.getAttribute(G)):M(e)}let P=()=>j(A().length-1),F=e=>{e.preventDefault(),e.metaKey?P():e.altKey?N(1):M(1)},I=e=>{e.preventDefault(),e.metaKey?j(0):e.altKey?N(-1):M(-1)};return R.createElement(l.div,{ref:t,tabIndex:-1,...y,"cmdk-root":``,onKeyDown:e=>{var t;(t=y.onKeyDown)==null||t.call(y,e);let n=e.nativeEvent.isComposing||e.keyCode===229;if(!(e.defaultPrevented||n))switch(e.key){case`n`:case`j`:v&&e.ctrlKey&&F(e);break;case`ArrowDown`:F(e);break;case`p`:case`k`:v&&e.ctrlKey&&I(e);break;case`ArrowUp`:I(e);break;case`Home`:e.preventDefault(),j(0);break;case`End`:e.preventDefault(),P();break;case`Enter`:{e.preventDefault();let t=k();if(t){let e=new Event(nt);t.dispatchEvent(e)}}}}},R.createElement(`label`,{"cmdk-label":``,htmlFor:T.inputId,id:T.labelId,style:St},c),Q(e,e=>R.createElement(at.Provider,{value:w},R.createElement(it.Provider,{value:T},e))))}),ct=R.forwardRef((e,t)=>{let n=f(),r=R.useRef(null),i=R.useContext(ot),o=K(),s=vt(e),c=s.current?.forceMount??i?.forceMount;Y(()=>{if(!c)return o.item(n,i?.id)},[c]);let u=yt(n,r,[e.value,e.children,r],e.keywords),d=q(),p=Z(e=>e.value&&e.value===u.current),m=Z(e=>c||o.filter()===!1?!0:!e.search||e.filtered.items.get(n)>0);R.useEffect(()=>{let t=r.current;if(!(!t||e.disabled))return t.addEventListener(nt,h),()=>t.removeEventListener(nt,h)},[m,e.onSelect,e.disabled]);function h(){var e,t;g(),(t=(e=s.current).onSelect)==null||t.call(e,u.current)}function g(){d.setState(`value`,u.current,!0)}if(!m)return null;let{disabled:_,value:v,onSelect:y,forceMount:b,keywords:ee,...x}=e;return R.createElement(l.div,{ref:a(r,t),...x,id:n,"cmdk-item":``,role:`option`,"aria-disabled":!!_,"aria-selected":!!p,"data-disabled":!!_,"data-selected":!!p,onPointerMove:_||o.getDisablePointerSelection()?void 0:g,onClick:_?void 0:h},e.children)}),lt=R.forwardRef((e,t)=>{let{heading:n,children:r,forceMount:i,...o}=e,s=f(),c=R.useRef(null),u=R.useRef(null),d=f(),p=K(),m=Z(e=>i||p.filter()===!1?!0:!e.search||e.filtered.groups.has(s));Y(()=>p.group(s),[]),yt(s,c,[e.value,e.heading,u]);let h=R.useMemo(()=>({id:s,forceMount:i}),[i]);return R.createElement(l.div,{ref:a(c,t),...o,"cmdk-group":``,role:`presentation`,hidden:!m||void 0},n&&R.createElement(`div`,{ref:u,"cmdk-group-heading":``,"aria-hidden":!0,id:d},n),Q(e,e=>R.createElement(`div`,{"cmdk-group-items":``,role:`group`,"aria-labelledby":n?d:void 0},R.createElement(ot.Provider,{value:h},e))))}),ut=R.forwardRef((e,t)=>{let{alwaysRender:n,...r}=e,i=R.useRef(null),o=Z(e=>!e.search);return!n&&!o?null:R.createElement(l.div,{ref:a(i,t),...r,"cmdk-separator":``,role:`separator`})}),dt=R.forwardRef((e,t)=>{let{onValueChange:n,...r}=e,i=e.value!=null,a=q(),o=Z(e=>e.search),s=Z(e=>e.selectedItemId),c=K();return R.useEffect(()=>{e.value!=null&&a.setState(`search`,e.value)},[e.value]),R.createElement(l.input,{ref:t,...r,"cmdk-input":``,autoComplete:`off`,autoCorrect:`off`,spellCheck:!1,"aria-autocomplete":`list`,role:`combobox`,"aria-expanded":!0,"aria-controls":c.listId,"aria-labelledby":c.labelId,"aria-activedescendant":s,id:c.inputId,type:`text`,value:i?e.value:o,onChange:e=>{i||a.setState(`search`,e.target.value),n?.(e.target.value)}})}),ft=R.forwardRef((e,t)=>{let{children:n,label:r=`Suggestions`,...i}=e,o=R.useRef(null),s=R.useRef(null),c=Z(e=>e.selectedItemId),u=K();return R.useEffect(()=>{if(s.current&&o.current){let e=s.current,t=o.current,n,r=new ResizeObserver(()=>{n=requestAnimationFrame(()=>{let n=e.offsetHeight;t.style.setProperty(`--cmdk-list-height`,n.toFixed(1)+`px`)})});return r.observe(e),()=>{cancelAnimationFrame(n),r.unobserve(e)}}},[]),R.createElement(l.div,{ref:a(o,t),...i,"cmdk-list":``,role:`listbox`,tabIndex:-1,"aria-activedescendant":c,"aria-label":r,id:u.listId},Q(e,e=>R.createElement(`div`,{ref:a(s,u.listInnerRef),"cmdk-list-sizer":``},e)))}),pt=R.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:i,contentClassName:a,container:o,...s}=e;return R.createElement(g,{open:n,onOpenChange:r},R.createElement(m,{container:o},R.createElement(p,{"cmdk-overlay":``,className:i}),R.createElement(h,{"aria-label":e.label,"cmdk-dialog":``,className:a},R.createElement(st,{ref:t,...s}))))}),mt=R.forwardRef((e,t)=>Z(e=>e.filtered.count===0)?R.createElement(l.div,{ref:t,...e,"cmdk-empty":``,role:`presentation`}):null),ht=R.forwardRef((e,t)=>{let{progress:n,children:r,label:i=`Loading...`,...a}=e;return R.createElement(l.div,{ref:t,...a,"cmdk-loading":``,role:`progressbar`,"aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":i},Q(e,e=>R.createElement(`div`,{"aria-hidden":!0},e)))}),J=Object.assign(st,{List:ft,Item:ct,Input:dt,Group:lt,Separator:ut,Dialog:pt,Empty:mt,Loading:ht});function gt(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}function _t(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}function vt(e){let t=R.useRef(e);return Y(()=>{t.current=e}),t}var Y=typeof window>`u`?R.useEffect:R.useLayoutEffect;function X(e){let t=R.useRef();return t.current===void 0&&(t.current=e()),t}function Z(e){let t=q(),n=()=>e(t.snapshot());return R.useSyncExternalStore(t.subscribe,n,n)}function yt(e,t,n,r=[]){let i=R.useRef(),a=K();return Y(()=>{var o;let s=(()=>{for(let e of n){if(typeof e==`string`)return e.trim();if(typeof e==`object`&&`current`in e)return e.current?e.current.textContent?.trim():i.current}})(),c=r.map(e=>e.trim());a.value(e,s,c),(o=t.current)==null||o.setAttribute(G,s),i.current=s}),i}var bt=()=>{let[e,t]=R.useState(),n=X(()=>new Map);return Y(()=>{n.current.forEach(e=>e()),n.current=new Map},[e]),(e,r)=>{n.current.set(e,r),t({})}};function xt(e){let t=e.type;return typeof t==`function`?t(e.props):`render`in t?t.render(e.props):e}function Q({asChild:e,children:t},n){return e&&R.isValidElement(t)?R.cloneElement(xt(t),{ref:t.ref},n(t.props.children)):n(t)}var St={position:`absolute`,width:`1px`,height:`1px`,padding:`0`,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,borderWidth:`0`},$=o();function Ct({className:e,...t}){return(0,$.jsx)(J,{"data-slot":`command`,className:c(`flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground`,e),...t})}function wt({title:e=`Command Palette`,description:t=`Search for a command to run...`,children:n,className:r,showCloseButton:i=!0,...a}){return(0,$.jsxs)(Se,{...a,children:[(0,$.jsxs)(ye,{className:`sr-only`,children:[(0,$.jsx)(be,{children:e}),(0,$.jsx)(xe,{children:t})]}),(0,$.jsx)(L,{className:c(`overflow-hidden p-0`,r),showCloseButton:i,children:(0,$.jsx)(Ct,{className:`**:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5`,children:n})})]})}function Tt({className:e,...t}){return(0,$.jsxs)(`div`,{"data-slot":`command-input-wrapper`,className:`flex h-9 items-center gap-2 border-b px-3`,children:[(0,$.jsx)(ge,{className:`size-4 shrink-0 opacity-50`}),(0,$.jsx)(J.Input,{"data-slot":`command-input`,className:c(`flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50`,e),...t})]})}function Et({className:e,...t}){return(0,$.jsx)(J.List,{"data-slot":`command-list`,className:c(`max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto`,e),...t})}function Dt({...e}){return(0,$.jsx)(J.Empty,{"data-slot":`command-empty`,className:`py-6 text-center text-sm`,...e})}function Ot({className:e,...t}){return(0,$.jsx)(J.Group,{"data-slot":`command-group`,className:c(`overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground`,e),...t})}function kt({className:e,...t}){return(0,$.jsx)(J.Item,{"data-slot":`command-item`,className:c(`relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground`,e),...t})}function At({className:e,...t}){return(0,$.jsx)(`span`,{"data-slot":`command-shortcut`,className:c(`ml-auto text-xs tracking-widest text-muted-foreground`,e),...t})}var jt={sky:`text-catppuccin-sky`,blue:`text-catppuccin-blue`,green:`text-catppuccin-green`,teal:`text-catppuccin-teal`,mauve:`text-catppuccin-mauve`,lavender:`text-catppuccin-lavender`,peach:`text-catppuccin-peach`,yellow:`text-catppuccin-yellow`,red:`text-catppuccin-red`};function Mt({theme:e}){let{background:t,blue:n,mauve:r,green:i}=e.colors;return(0,$.jsx)(`span`,{className:`flex size-5 shrink-0 overflow-hidden rounded-sm border border-catppuccin-surface2`,children:[t,n,r,i].map((e,t)=>(0,$.jsx)(`span`,{className:`flex-1`,style:{backgroundColor:e}},t))})}function Nt(){let{t:e}=s(),{activeDialog:n,closeDialog:i,openDialog:a}=r(),o=r(e=>e.setWelcomeVisible),l=r(e=>e.setFooterMessage),{executeCurrentQuery:f,executeCurrentStatement:p,executeWholeScript:m,addNewQueryTab:h,disconnectActive:g}=se(),{capabilities:ge}=fe(),ye=y(),L=_(e=>e.activeConnections.find(t=>t.id===e.activeConnectionId)),be=_(e=>e.activeConnectionId?e.transactionOpen[e.activeConnectionId]??!1:!1),xe=_(e=>e.updateProfile),Se=ie(e=>e.themeId),He=ie(e=>e.setTheme),Ue=v(e=>e.locale),We=v(e=>e.setLocale),Ge=n===`quick-command`,z=L!==void 0,B=b(e=>{let t=_.getState().activeConnectionId;if(!t)return!1;let n=e.activeTabId[t];return(e.tabs[t]??ee).find(e=>e.id===n)?.isExecuting??!1});async function Ke(){let e=_.getState().activeConnectionId;if(!e)return;let t=x(await S(e));t&&r.getState().setFooterMessage(t)}let V=(0,R.useCallback)(e=>{i(),e()},[i]),H=(0,R.useCallback)(e=>l(e instanceof Error?e.message:String(e)),[l]),qe=()=>{let e=_.getState().activeConnectionId;e&&(T.getState().openERD(e),t(`erd_open`),b.getState().setActiveQueryTab(e,`erd`))},Je=[{heading:e(`palette.groups.connection`),commands:[{id:`connect`,label:e(`palette.commands.connect`),icon:Pe,tone:`sky`,shortcut:`Alt+N`,keywords:[`connect`,`server`,`profile`,`login`],disabled:!ye,action:()=>V(()=>a(`connect`))},{id:`disconnect`,label:e(`palette.commands.disconnect`),icon:ce,tone:`red`,keywords:[`disconnect`,`close`],disabled:!z,action:()=>V(()=>{g()})},{id:`read-only`,label:e(`menu.connection.readOnly`),icon:D,tone:`yellow`,keywords:[`read only`,`safety`,`guard`],disabled:!z,checked:L?.readOnly===!0,action:()=>V(()=>{L&&xe(L.id,{readOnly:!L.readOnly})})},{id:`manual-transactions`,capability:`transactions`,label:e(`menu.connection.manualTransactions`),icon:M,tone:`lavender`,keywords:[`transaction`,`manual`,`autocommit`],disabled:!z,checked:L?.transactionMode===`manual`,action:()=>V(()=>{L&&xe(L.id,{transactionMode:L.transactionMode===`manual`?`auto`:`manual`})})},{id:`commit`,capability:`transactions`,label:e(`toolbar.commit`),icon:P,tone:`green`,keywords:[`commit`,`transaction`],disabled:!be||!L,action:()=>V(()=>{L&&w(L.id).catch(H)})},{id:`rollback`,capability:`transactions`,label:e(`toolbar.rollback`),icon:ue,tone:`peach`,keywords:[`rollback`,`transaction`,`undo`],disabled:!be||!L,action:()=>V(()=>{L&&C(L.id).catch(H)})}]},{heading:e(`palette.groups.query`),commands:[{id:`execute`,label:e(`palette.commands.executeQuery`),icon:he,tone:`green`,shortcut:`F9`,keywords:[`run`,`execute`,`sql`],disabled:!z,action:()=>V(()=>{f()})},{id:`stop-query`,label:e(`result.running.stop`),icon:me,tone:`red`,keywords:[`stop`,`cancel`,`abort`,`kill`],disabled:!B,action:()=>V(()=>{Ke()})},{id:`execute-statement`,label:e(`menu.query.executeStatementAtCursor`),icon:Te,tone:`green`,shortcut:`Ctrl+Enter`,keywords:[`run`,`statement`,`cursor`],disabled:!z,action:()=>V(()=>{p()})},{id:`execute-script`,label:e(`menu.query.executeWholeScript`),icon:Re,tone:`teal`,shortcut:`Ctrl+Shift+Enter`,keywords:[`run`,`script`,`batch`],disabled:!z,action:()=>V(()=>{m()})},{id:`new-tab`,label:e(`palette.commands.newQueryTab`),icon:E,tone:`blue`,shortcut:`Alt+T`,keywords:[`new`,`tab`,`editor`],disabled:!z,action:()=>V(()=>h())},{id:`find-replace`,label:e(`menu.query.findReplace`),icon:Fe,tone:`lavender`,keywords:[`find`,`replace`,`search`],disabled:!z,action:()=>V(()=>a(`find-replace`))},{id:`local-history`,label:e(`menu.query.localHistory`),icon:je,tone:`mauve`,keywords:[`history`,`snapshot`,`undo`],disabled:!z,action:()=>V(()=>a(`local-history`))}]},{heading:e(`palette.groups.database`),commands:[{id:`create-db`,capability:`multipleDatabases`,label:e(`palette.commands.createDatabase`),icon:A,tone:`blue`,keywords:[`create`,`database`,`schema`],disabled:!z,action:()=>V(()=>a(`create-database`))},{id:`alter-db`,capability:`multipleDatabases`,label:e(`menu.database.alter`),icon:Ee,tone:`blue`,keywords:[`alter`,`database`,`charset`],disabled:!z,action:()=>V(()=>a(`alter-database`))},{id:`copy-db`,capability:`multipleDatabases`,label:e(`menu.database.copy`),icon:j,tone:`sky`,keywords:[`copy`,`clone`,`database`],disabled:!z,action:()=>V(()=>a(`copy-database`))},{id:`schema-diff`,label:e(`menu.database.compare`),icon:ke,tone:`mauve`,keywords:[`compare`,`diff`,`schema`,`sync`],pro:`compare_schemas`,disabled:!z,action:()=>V(()=>a(`schema-diff`))},{id:`data-diff`,label:e(`menu.database.compareData`),icon:Ae,tone:`mauve`,keywords:[`compare`,`diff`,`data`,`rows`],pro:`compare_data`,disabled:!z,action:()=>V(()=>a(`data-diff`))},{id:`group-by`,label:e(`menu.database.groupBy`),icon:_e,tone:`mauve`,keywords:[`group`,`count`,`aggregate`,`distinct`,`summary`],disabled:!z,action:()=>V(()=>a(`group-by`))}]},{heading:e(`palette.groups.table`),commands:[{id:`create-table`,label:e(`palette.commands.createTable`),icon:ae,tone:`green`,keywords:[`create`,`table`],disabled:!z,action:()=>V(()=>a(`create-table`))},{id:`alter-table`,label:e(`palette.commands.alterTable`),icon:pe,tone:`yellow`,keywords:[`alter`,`table`,`column`],disabled:!z,action:()=>V(()=>a(`alter-table`))},{id:`duplicate-table`,label:e(`menu.table.duplicateStructure`),icon:we,tone:`teal`,keywords:[`duplicate`,`structure`,`table`],disabled:!z,action:()=>V(()=>a(`duplicate-table-structure`))}]},{heading:e(`menu.export.title`),commands:[{id:`export-csv`,label:e(`menu.export.csv`),icon:Oe,tone:`green`,keywords:[`export`,`csv`,`excel`],disabled:!z,action:()=>V(()=>a(`export-csv`))},{id:`export-html`,label:e(`menu.export.schemaHtml`),icon:De,tone:`peach`,keywords:[`export`,`html`,`schema`,`documentation`],disabled:!z,action:()=>V(()=>a(`export-html`))}]},{heading:e(`palette.groups.tools`),commands:[{id:`process-list`,capability:`processList`,label:e(`palette.commands.processList`),icon:O,tone:`red`,keywords:[`process`,`kill`,`connections`],disabled:!z,action:()=>V(()=>a(`process-list`))},{id:`variables`,capability:`variables`,label:e(`palette.commands.serverVariables`),icon:ze,tone:`lavender`,keywords:[`variables`,`server`,`settings`],disabled:!z,action:()=>V(()=>a(`variables`))},{id:`status`,capability:`status`,label:e(`palette.commands.serverStatus`),icon:le,tone:`teal`,keywords:[`status`,`server`,`metrics`],disabled:!z,action:()=>V(()=>a(`status`))},{id:`flush`,capability:`flush`,label:e(`palette.commands.flush`),icon:F,tone:`peach`,keywords:[`flush`,`cache`,`reload`],disabled:!z,action:()=>V(()=>a(`flush`))},{id:`user-manager`,capability:`users`,label:e(`palette.commands.userManager`),icon:oe,tone:`blue`,keywords:[`users`,`grants`,`privileges`],disabled:!z,action:()=>V(()=>a(`user-manager`))},{id:`scratchpad`,label:e(`menu.tools.scratchpad`),icon:I,tone:`yellow`,keywords:[`scratchpad`,`sqlite`,`local`],pro:`scratchpad`,action:()=>V(()=>{k().catch(H)})},{id:`federated`,label:e(`menu.tools.federated`),icon:Ve,tone:`mauve`,keywords:[`federated`,`cross`,`join`,`connections`],pro:`federated`,action:()=>V(()=>{re().catch(H)})},{id:`erd`,label:e(`menu.tools.viewErd`),icon:Ne,tone:`sky`,keywords:[`erd`,`diagram`,`relations`],disabled:!z,action:()=>V(qe)}]},{heading:e(`menu.settings.theme`),commands:N().map(e=>({id:`theme-${e.id}`,label:e.name,tone:`lavender`,keywords:[`theme`,`color`,`appearance`,`dark`,`light`,e.id],checked:Se===e.id,swatch:e,action:()=>V(()=>He(e.id))}))},{heading:e(`menu.settings.language`),commands:[`auto`,...d].map(t=>({id:`locale-${t}`,label:t===`auto`?e(`language.auto`,{name:e(`language.${u()}`)}):e(`language.${t}`),icon:Me,tone:`teal`,keywords:[`language`,`locale`,`i18n`,t],checked:Ue===t,action:()=>V(()=>We(t))}))},{heading:e(`menu.settings.title`),commands:[{id:`safety-settings`,label:e(`menu.settings.safety`),icon:Be,tone:`yellow`,keywords:[`safety`,`settings`,`row limit`,`preferences`],action:()=>V(()=>a(`safety-settings`))}]},{heading:e(`menu.help.title`),commands:[{id:`documentation`,label:e(`menu.help.documentation`),icon:Ce,tone:`blue`,keywords:[`docs`,`documentation`,`manual`,`help`],action:()=>V(()=>{window.open(de(),`_blank`,`noopener,noreferrer`)})},{id:`getting-started`,label:e(`menu.help.gettingStarted`),icon:Ie,tone:`green`,keywords:[`welcome`,`onboarding`,`sample`,`getting started`],action:()=>V(()=>o(!0))},{id:`terms`,label:e(`menu.help.terms`),icon:Le,tone:`peach`,keywords:[`terms`,`privacy`,`legal`],action:()=>V(()=>a(`terms`))},{id:`about`,label:e(`menu.help.about`),icon:te,tone:`sky`,keywords:[`about`,`version`,`agent`],action:()=>V(()=>a(`about`))}]}];function Ye(e){e||i()}let U=Je.map(e=>({...e,commands:e.commands.filter(e=>!e.capability||ge[e.capability])})).filter(e=>e.commands.length>0);return(0,$.jsxs)(wt,{open:Ge,onOpenChange:Ye,title:e(`palette.title`),description:e(`palette.description`),children:[(0,$.jsx)(Tt,{placeholder:e(`palette.inputPlaceholder`)}),(0,$.jsxs)(Et,{className:`max-h-[60vh]`,children:[(0,$.jsx)(Dt,{children:e(`palette.empty`)}),U.map(e=>(0,$.jsx)(Ot,{heading:e.heading,children:e.commands.map(t=>(0,$.jsxs)(kt,{value:`${e.heading} ${t.label}`,keywords:t.keywords,disabled:t.disabled,onSelect:()=>{(!t.pro||ne(t.pro))&&t.action()},children:[t.swatch?(0,$.jsx)(Mt,{theme:t.swatch}):t.icon?(0,$.jsx)(t.icon,{className:c(`size-4`,jt[t.tone])}):null,(0,$.jsx)(`span`,{className:`truncate`,children:t.label}),(0,$.jsxs)(`span`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:[t.pro&&(0,$.jsx)(ve,{className:`ml-0`}),t.checked&&(0,$.jsx)(P,{className:`size-3.5 text-catppuccin-green`}),t.shortcut&&(0,$.jsx)(At,{className:`ml-0`,children:t.shortcut})]})]},t.id))},e.heading))]})]})}export{Nt as QuickCommandPalette};
1
+ import{r as e}from"./hePW80VL.js";import{c as t,h as n,n as r}from"./BkIkgVK5.js";import{a as i,f as a,l as o,m as s,o as c,s as l}from"./C0O3rJzW.js";import{r as u,t as d}from"./BAZqI8g_.js";import{_ as f,a as p,o as m,r as h,t as g}from"./CaoceGhm.js";import{t as _}from"./DC8XCjJ3.js";import{n as v,r as y}from"./DP94Ond0.js";import{n as b,t as ee}from"./dMlgA_r1.js";import{n as x,t as S}from"./Dd9quIZg.js";import{c as C,i as w}from"./DnJeTfn9.js";import{$ as T,At as te,Ct as E,Et as D,Ht as O,I as ne,J as k,Mt as A,Nt as j,Ot as M,Q as N,Rt as P,St as F,Tt as I,V as re,Z as ie,_t as ae,dt as oe,et as se,ft as ce,gt as le,pt as ue,q as de,st as fe,ut as pe,vt as me,wt as he,xt as ge,yt as _e,z as ve}from"./Bg6u9htc.js";import{a as ye,n as L,o as be,r as xe,t as Se}from"./Cg4DfVr4.js";var Ce=i(`book-open`,[[`path`,{d:`M12 7v14`,key:`1akyts`}],[`path`,{d:`M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z`,key:`ruj8y`}]]),we=i(`copy-plus`,[[`line`,{x1:`15`,x2:`15`,y1:`12`,y2:`18`,key:`1p7wdc`}],[`line`,{x1:`12`,x2:`18`,y1:`15`,y2:`15`,key:`1nscbv`}],[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),Te=i(`corner-down-left`,[[`path`,{d:`M20 4v7a4 4 0 0 1-4 4H4`,key:`6o5b7l`}],[`path`,{d:`m9 10-5 5 5 5`,key:`1kshq7`}]]),Ee=i(`database-zap`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 15 21.84`,key:`14ibmq`}],[`path`,{d:`M21 5V8`,key:`1marbg`}],[`path`,{d:`M21 12L18 17H22L19 22`,key:`zafso`}],[`path`,{d:`M3 12A9 3 0 0 0 14.59 14.87`,key:`1y4wr8`}]]),De=i(`file-code`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12.5 8 15l2 2.5`,key:`1tg20x`}],[`path`,{d:`m14 12.5 2 2.5-2 2.5`,key:`yinavb`}]]),Oe=i(`file-spreadsheet`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M8 13h2`,key:`yr2amv`}],[`path`,{d:`M14 13h2`,key:`un5t4a`}],[`path`,{d:`M8 17h2`,key:`2yhykz`}],[`path`,{d:`M14 17h2`,key:`10kma7`}]]),ke=i(`git-compare`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`path`,{d:`M11 18H8a2 2 0 0 1-2-2V9`,key:`19pyzm`}]]),Ae=i(`git-compare-arrows`,[[`circle`,{cx:`5`,cy:`6`,r:`3`,key:`1qnov2`}],[`path`,{d:`M12 6h5a2 2 0 0 1 2 2v7`,key:`1yj91y`}],[`path`,{d:`m15 9-3-3 3-3`,key:`1lwv8l`}],[`circle`,{cx:`19`,cy:`18`,r:`3`,key:`1qljk2`}],[`path`,{d:`M12 18H7a2 2 0 0 1-2-2V9`,key:`16sdep`}],[`path`,{d:`m9 15 3 3-3 3`,key:`1m3kbl`}]]),je=i(`history`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}],[`path`,{d:`M12 7v5l4 2`,key:`1fdv2h`}]]),Me=i(`languages`,[[`path`,{d:`m5 8 6 6`,key:`1wu5hv`}],[`path`,{d:`m4 14 6-6 2-3`,key:`1k1g8d`}],[`path`,{d:`M2 5h12`,key:`or177f`}],[`path`,{d:`M7 2h1`,key:`1t2jsx`}],[`path`,{d:`m22 22-5-10-5 10`,key:`don7ne`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),Ne=i(`network`,[[`rect`,{x:`16`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`4q2zg0`}],[`rect`,{x:`2`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`8cvhb9`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`6`,rx:`1`,key:`1egb70`}],[`path`,{d:`M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3`,key:`1jsf9p`}],[`path`,{d:`M12 12V8`,key:`2874zd`}]]),Pe=i(`plug`,[[`path`,{d:`M12 22v-5`,key:`1ega77`}],[`path`,{d:`M15 8V2`,key:`18g5xt`}],[`path`,{d:`M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z`,key:`1xoxul`}],[`path`,{d:`M9 8V2`,key:`14iosj`}]]),Fe=i(`replace`,[[`path`,{d:`M14 4a1 1 0 0 1 1-1`,key:`dhj8ez`}],[`path`,{d:`M15 10a1 1 0 0 1-1-1`,key:`1mnyi5`}],[`path`,{d:`M21 4a1 1 0 0 0-1-1`,key:`sfs9ap`}],[`path`,{d:`M21 9a1 1 0 0 1-1 1`,key:`mp6qeo`}],[`path`,{d:`m3 7 3 3 3-3`,key:`x25e72`}],[`path`,{d:`M6 10V5a2 2 0 0 1 2-2h2`,key:`15xut4`}],[`rect`,{x:`3`,y:`14`,width:`7`,height:`7`,rx:`1`,key:`1bkyp8`}]]),Ie=i(`rocket`,[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]),Le=i(`scale`,[[`path`,{d:`M12 3v18`,key:`108xh3`}],[`path`,{d:`m19 8 3 8a5 5 0 0 1-6 0zV7`,key:`zcdpyk`}],[`path`,{d:`M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1`,key:`1yorad`}],[`path`,{d:`m5 8 3 8a5 5 0 0 1-6 0zV7`,key:`eua70x`}],[`path`,{d:`M7 21h10`,key:`1b0cd5`}]]),Re=i(`scroll-text`,[[`path`,{d:`M15 12h-5`,key:`r7krc0`}],[`path`,{d:`M15 8h-5`,key:`1khuty`}],[`path`,{d:`M19 17V5a2 2 0 0 0-2-2H4`,key:`zz82l3`}],[`path`,{d:`M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3`,key:`1ph1d7`}]]),ze=i(`settings-2`,[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]),Be=i(`shield-alert`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M12 8v4`,key:`1got3b`}],[`path`,{d:`M12 16h.01`,key:`1drbdi`}]]),Ve=i(`waypoints`,[[`path`,{d:`m10.586 5.414-5.172 5.172`,key:`4mc350`}],[`path`,{d:`m18.586 13.414-5.172 5.172`,key:`8c96vv`}],[`path`,{d:`M6 12h12`,key:`8npq4p`}],[`circle`,{cx:`12`,cy:`20`,r:`2`,key:`144qzu`}],[`circle`,{cx:`12`,cy:`4`,r:`2`,key:`muu5ef`}],[`circle`,{cx:`20`,cy:`12`,r:`2`,key:`1xzzfp`}],[`circle`,{cx:`4`,cy:`12`,r:`2`,key:`1hvhnz`}]]),R=e(n(),1),He=1,Ue=.9,We=.8,Ge=.17,z=.1,B=.999,Ke=.9999,V=.99,H=/[\\\/_+.#"@\[\(\{&]/,qe=/[\\\/_+.#"@\[\(\{&]/g,Je=/[\s-]/,Ye=/[\s-]/g;function U(e,t,n,r,i,a,o){if(a===t.length)return i===e.length?He:V;var s=`${i},${a}`;if(o[s]!==void 0)return o[s];for(var c=r.charAt(a),l=n.indexOf(c,i),u=0,d,f,p,m;l>=0;)d=U(e,t,n,r,l+1,a+1,o),d>u&&(l===i?d*=He:H.test(e.charAt(l-1))?(d*=We,p=e.slice(i,l-1).match(qe),p&&i>0&&(d*=B**+p.length)):Je.test(e.charAt(l-1))?(d*=Ue,m=e.slice(i,l-1).match(Ye),m&&i>0&&(d*=B**+m.length)):(d*=Ge,i>0&&(d*=B**+(l-i))),e.charAt(l)!==t.charAt(a)&&(d*=Ke)),(d<z&&n.charAt(l-1)===r.charAt(a+1)||r.charAt(a+1)===r.charAt(a)&&n.charAt(l-1)!==r.charAt(a))&&(f=U(e,t,n,r,l+1,a+2,o),f*z>d&&(d=f*z)),d>u&&(u=d),l=n.indexOf(c,l+1);return o[s]=u,u}function Xe(e){return e.toLowerCase().replace(Ye,` `)}function Ze(e,t,n){return e=n&&n.length>0?`${e+` `+n.join(` `)}`:e,U(e,t,Xe(e),Xe(t),0,0,{})}var W=`[cmdk-group=""]`,Qe=`[cmdk-group-items=""]`,$e=`[cmdk-group-heading=""]`,et=`[cmdk-item=""]`,tt=`${et}:not([aria-disabled="true"])`,nt=`cmdk-item-select`,G=`data-value`,rt=(e,t,n)=>Ze(e,t,n),it=R.createContext(void 0),K=()=>R.useContext(it),at=R.createContext(void 0),q=()=>R.useContext(at),ot=R.createContext(void 0),st=R.forwardRef((e,t)=>{let n=X(()=>({search:``,value:e.value??e.defaultValue??``,selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}})),r=X(()=>new Set),i=X(()=>new Map),a=X(()=>new Map),o=X(()=>new Set),s=vt(e),{label:c,children:u,value:d,onValueChange:p,filter:m,shouldFilter:h,loop:g,disablePointerSelection:_=!1,vimBindings:v=!0,...y}=e,b=f(),ee=f(),x=f(),S=R.useRef(null),C=bt();Y(()=>{if(d!==void 0){let e=d.trim();n.current.value=e,w.emit()}},[d]),Y(()=>{C(6,ne)},[]);let w=R.useMemo(()=>({subscribe:e=>(o.current.add(e),()=>o.current.delete(e)),snapshot:()=>n.current,setState:(e,t,r)=>{var i,a,o;if(!Object.is(n.current[e],t)){if(n.current[e]=t,e===`search`)O(),E(),C(1,D);else if(e===`value`){if(document.activeElement.hasAttribute(`cmdk-input`)||document.activeElement.hasAttribute(`cmdk-root`)){let e=document.getElementById(x);e?e.focus():(i=document.getElementById(b))==null||i.focus()}if(C(7,()=>{n.current.selectedItemId=k()?.id,w.emit()}),r||C(5,ne),s.current?.value!==void 0){let e=t??``;(o=(a=s.current).onValueChange)==null||o.call(a,e);return}}w.emit()}},emit:()=>{o.current.forEach(e=>e())}}),[]),T=R.useMemo(()=>({value:(e,t,r)=>{t!==a.current.get(e)?.value&&(a.current.set(e,{value:t,keywords:r}),n.current.filtered.items.set(e,te(t,r)),C(2,()=>{E(),w.emit()}))},item:(e,t)=>(r.current.add(e),t&&(i.current.has(t)?i.current.get(t).add(e):i.current.set(t,new Set([e]))),C(3,()=>{O(),E(),n.current.value||D(),w.emit()}),()=>{a.current.delete(e),r.current.delete(e),n.current.filtered.items.delete(e);let t=k();C(4,()=>{O(),t?.getAttribute(`id`)===e&&D(),w.emit()})}),group:e=>(i.current.has(e)||i.current.set(e,new Set),()=>{a.current.delete(e),i.current.delete(e)}),filter:()=>s.current.shouldFilter,label:c||e[`aria-label`],getDisablePointerSelection:()=>s.current.disablePointerSelection,listId:b,inputId:x,labelId:ee,listInnerRef:S}),[]);function te(e,t){let r=s.current?.filter??rt;return e?r(e,n.current.search,t):0}function E(){if(!n.current.search||s.current.shouldFilter===!1)return;let e=n.current.filtered.items,t=[];n.current.filtered.groups.forEach(n=>{let r=i.current.get(n),a=0;r.forEach(t=>{let n=e.get(t);a=Math.max(n,a)}),t.push([n,a])});let r=S.current;A().sort((t,n)=>{let r=t.getAttribute(`id`),i=n.getAttribute(`id`);return(e.get(i)??0)-(e.get(r)??0)}).forEach(e=>{let t=e.closest(Qe);t?t.appendChild(e.parentElement===t?e:e.closest(`${Qe} > *`)):r.appendChild(e.parentElement===r?e:e.closest(`${Qe} > *`))}),t.sort((e,t)=>t[1]-e[1]).forEach(e=>{let t=S.current?.querySelector(`${W}[${G}="${encodeURIComponent(e[0])}"]`);t?.parentElement.appendChild(t)})}function D(){let e=A().find(e=>e.getAttribute(`aria-disabled`)!==`true`)?.getAttribute(G);w.setState(`value`,e||void 0)}function O(){if(!n.current.search||s.current.shouldFilter===!1){n.current.filtered.count=r.current.size;return}n.current.filtered.groups=new Set;let e=0;for(let t of r.current){let r=te(a.current.get(t)?.value??``,a.current.get(t)?.keywords??[]);n.current.filtered.items.set(t,r),r>0&&e++}for(let[e,t]of i.current)for(let r of t)if(n.current.filtered.items.get(r)>0){n.current.filtered.groups.add(e);break}n.current.filtered.count=e}function ne(){var e;let t=k();t&&(t.parentElement?.firstChild===t&&((e=t.closest(W)?.querySelector($e))==null||e.scrollIntoView({block:`nearest`})),t.scrollIntoView({block:`nearest`}))}function k(){return S.current?.querySelector(`${et}[aria-selected="true"]`)}function A(){return Array.from(S.current?.querySelectorAll(tt)||[])}function j(e){let t=A()[e];t&&w.setState(`value`,t.getAttribute(G))}function M(e){var t;let n=k(),r=A(),i=r.findIndex(e=>e===n),a=r[i+e];(t=s.current)!=null&&t.loop&&(a=i+e<0?r[r.length-1]:i+e===r.length?r[0]:r[i+e]),a&&w.setState(`value`,a.getAttribute(G))}function N(e){let t=k()?.closest(W),n;for(;t&&!n;)t=e>0?gt(t,W):_t(t,W),n=t?.querySelector(tt);n?w.setState(`value`,n.getAttribute(G)):M(e)}let P=()=>j(A().length-1),F=e=>{e.preventDefault(),e.metaKey?P():e.altKey?N(1):M(1)},I=e=>{e.preventDefault(),e.metaKey?j(0):e.altKey?N(-1):M(-1)};return R.createElement(l.div,{ref:t,tabIndex:-1,...y,"cmdk-root":``,onKeyDown:e=>{var t;(t=y.onKeyDown)==null||t.call(y,e);let n=e.nativeEvent.isComposing||e.keyCode===229;if(!(e.defaultPrevented||n))switch(e.key){case`n`:case`j`:v&&e.ctrlKey&&F(e);break;case`ArrowDown`:F(e);break;case`p`:case`k`:v&&e.ctrlKey&&I(e);break;case`ArrowUp`:I(e);break;case`Home`:e.preventDefault(),j(0);break;case`End`:e.preventDefault(),P();break;case`Enter`:{e.preventDefault();let t=k();if(t){let e=new Event(nt);t.dispatchEvent(e)}}}}},R.createElement(`label`,{"cmdk-label":``,htmlFor:T.inputId,id:T.labelId,style:St},c),Q(e,e=>R.createElement(at.Provider,{value:w},R.createElement(it.Provider,{value:T},e))))}),ct=R.forwardRef((e,t)=>{let n=f(),r=R.useRef(null),i=R.useContext(ot),o=K(),s=vt(e),c=s.current?.forceMount??i?.forceMount;Y(()=>{if(!c)return o.item(n,i?.id)},[c]);let u=yt(n,r,[e.value,e.children,r],e.keywords),d=q(),p=Z(e=>e.value&&e.value===u.current),m=Z(e=>c||o.filter()===!1?!0:!e.search||e.filtered.items.get(n)>0);R.useEffect(()=>{let t=r.current;if(!(!t||e.disabled))return t.addEventListener(nt,h),()=>t.removeEventListener(nt,h)},[m,e.onSelect,e.disabled]);function h(){var e,t;g(),(t=(e=s.current).onSelect)==null||t.call(e,u.current)}function g(){d.setState(`value`,u.current,!0)}if(!m)return null;let{disabled:_,value:v,onSelect:y,forceMount:b,keywords:ee,...x}=e;return R.createElement(l.div,{ref:a(r,t),...x,id:n,"cmdk-item":``,role:`option`,"aria-disabled":!!_,"aria-selected":!!p,"data-disabled":!!_,"data-selected":!!p,onPointerMove:_||o.getDisablePointerSelection()?void 0:g,onClick:_?void 0:h},e.children)}),lt=R.forwardRef((e,t)=>{let{heading:n,children:r,forceMount:i,...o}=e,s=f(),c=R.useRef(null),u=R.useRef(null),d=f(),p=K(),m=Z(e=>i||p.filter()===!1?!0:!e.search||e.filtered.groups.has(s));Y(()=>p.group(s),[]),yt(s,c,[e.value,e.heading,u]);let h=R.useMemo(()=>({id:s,forceMount:i}),[i]);return R.createElement(l.div,{ref:a(c,t),...o,"cmdk-group":``,role:`presentation`,hidden:!m||void 0},n&&R.createElement(`div`,{ref:u,"cmdk-group-heading":``,"aria-hidden":!0,id:d},n),Q(e,e=>R.createElement(`div`,{"cmdk-group-items":``,role:`group`,"aria-labelledby":n?d:void 0},R.createElement(ot.Provider,{value:h},e))))}),ut=R.forwardRef((e,t)=>{let{alwaysRender:n,...r}=e,i=R.useRef(null),o=Z(e=>!e.search);return!n&&!o?null:R.createElement(l.div,{ref:a(i,t),...r,"cmdk-separator":``,role:`separator`})}),dt=R.forwardRef((e,t)=>{let{onValueChange:n,...r}=e,i=e.value!=null,a=q(),o=Z(e=>e.search),s=Z(e=>e.selectedItemId),c=K();return R.useEffect(()=>{e.value!=null&&a.setState(`search`,e.value)},[e.value]),R.createElement(l.input,{ref:t,...r,"cmdk-input":``,autoComplete:`off`,autoCorrect:`off`,spellCheck:!1,"aria-autocomplete":`list`,role:`combobox`,"aria-expanded":!0,"aria-controls":c.listId,"aria-labelledby":c.labelId,"aria-activedescendant":s,id:c.inputId,type:`text`,value:i?e.value:o,onChange:e=>{i||a.setState(`search`,e.target.value),n?.(e.target.value)}})}),ft=R.forwardRef((e,t)=>{let{children:n,label:r=`Suggestions`,...i}=e,o=R.useRef(null),s=R.useRef(null),c=Z(e=>e.selectedItemId),u=K();return R.useEffect(()=>{if(s.current&&o.current){let e=s.current,t=o.current,n,r=new ResizeObserver(()=>{n=requestAnimationFrame(()=>{let n=e.offsetHeight;t.style.setProperty(`--cmdk-list-height`,n.toFixed(1)+`px`)})});return r.observe(e),()=>{cancelAnimationFrame(n),r.unobserve(e)}}},[]),R.createElement(l.div,{ref:a(o,t),...i,"cmdk-list":``,role:`listbox`,tabIndex:-1,"aria-activedescendant":c,"aria-label":r,id:u.listId},Q(e,e=>R.createElement(`div`,{ref:a(s,u.listInnerRef),"cmdk-list-sizer":``},e)))}),pt=R.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:i,contentClassName:a,container:o,...s}=e;return R.createElement(g,{open:n,onOpenChange:r},R.createElement(m,{container:o},R.createElement(p,{"cmdk-overlay":``,className:i}),R.createElement(h,{"aria-label":e.label,"cmdk-dialog":``,className:a},R.createElement(st,{ref:t,...s}))))}),mt=R.forwardRef((e,t)=>Z(e=>e.filtered.count===0)?R.createElement(l.div,{ref:t,...e,"cmdk-empty":``,role:`presentation`}):null),ht=R.forwardRef((e,t)=>{let{progress:n,children:r,label:i=`Loading...`,...a}=e;return R.createElement(l.div,{ref:t,...a,"cmdk-loading":``,role:`progressbar`,"aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":i},Q(e,e=>R.createElement(`div`,{"aria-hidden":!0},e)))}),J=Object.assign(st,{List:ft,Item:ct,Input:dt,Group:lt,Separator:ut,Dialog:pt,Empty:mt,Loading:ht});function gt(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}function _t(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}function vt(e){let t=R.useRef(e);return Y(()=>{t.current=e}),t}var Y=typeof window>`u`?R.useEffect:R.useLayoutEffect;function X(e){let t=R.useRef();return t.current===void 0&&(t.current=e()),t}function Z(e){let t=q(),n=()=>e(t.snapshot());return R.useSyncExternalStore(t.subscribe,n,n)}function yt(e,t,n,r=[]){let i=R.useRef(),a=K();return Y(()=>{var o;let s=(()=>{for(let e of n){if(typeof e==`string`)return e.trim();if(typeof e==`object`&&`current`in e)return e.current?e.current.textContent?.trim():i.current}})(),c=r.map(e=>e.trim());a.value(e,s,c),(o=t.current)==null||o.setAttribute(G,s),i.current=s}),i}var bt=()=>{let[e,t]=R.useState(),n=X(()=>new Map);return Y(()=>{n.current.forEach(e=>e()),n.current=new Map},[e]),(e,r)=>{n.current.set(e,r),t({})}};function xt(e){let t=e.type;return typeof t==`function`?t(e.props):`render`in t?t.render(e.props):e}function Q({asChild:e,children:t},n){return e&&R.isValidElement(t)?R.cloneElement(xt(t),{ref:t.ref},n(t.props.children)):n(t)}var St={position:`absolute`,width:`1px`,height:`1px`,padding:`0`,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,borderWidth:`0`},$=o();function Ct({className:e,...t}){return(0,$.jsx)(J,{"data-slot":`command`,className:c(`flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground`,e),...t})}function wt({title:e=`Command Palette`,description:t=`Search for a command to run...`,children:n,className:r,showCloseButton:i=!0,...a}){return(0,$.jsxs)(Se,{...a,children:[(0,$.jsxs)(ye,{className:`sr-only`,children:[(0,$.jsx)(be,{children:e}),(0,$.jsx)(xe,{children:t})]}),(0,$.jsx)(L,{className:c(`overflow-hidden p-0`,r),showCloseButton:i,children:(0,$.jsx)(Ct,{className:`**:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5`,children:n})})]})}function Tt({className:e,...t}){return(0,$.jsxs)(`div`,{"data-slot":`command-input-wrapper`,className:`flex h-9 items-center gap-2 border-b px-3`,children:[(0,$.jsx)(ge,{className:`size-4 shrink-0 opacity-50`}),(0,$.jsx)(J.Input,{"data-slot":`command-input`,className:c(`flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50`,e),...t})]})}function Et({className:e,...t}){return(0,$.jsx)(J.List,{"data-slot":`command-list`,className:c(`max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto`,e),...t})}function Dt({...e}){return(0,$.jsx)(J.Empty,{"data-slot":`command-empty`,className:`py-6 text-center text-sm`,...e})}function Ot({className:e,...t}){return(0,$.jsx)(J.Group,{"data-slot":`command-group`,className:c(`overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground`,e),...t})}function kt({className:e,...t}){return(0,$.jsx)(J.Item,{"data-slot":`command-item`,className:c(`relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground`,e),...t})}function At({className:e,...t}){return(0,$.jsx)(`span`,{"data-slot":`command-shortcut`,className:c(`ml-auto text-xs tracking-widest text-muted-foreground`,e),...t})}var jt={sky:`text-catppuccin-sky`,blue:`text-catppuccin-blue`,green:`text-catppuccin-green`,teal:`text-catppuccin-teal`,mauve:`text-catppuccin-mauve`,lavender:`text-catppuccin-lavender`,peach:`text-catppuccin-peach`,yellow:`text-catppuccin-yellow`,red:`text-catppuccin-red`};function Mt({theme:e}){let{background:t,blue:n,mauve:r,green:i}=e.colors;return(0,$.jsx)(`span`,{className:`flex size-5 shrink-0 overflow-hidden rounded-sm border border-catppuccin-surface2`,children:[t,n,r,i].map((e,t)=>(0,$.jsx)(`span`,{className:`flex-1`,style:{backgroundColor:e}},t))})}function Nt(){let{t:e}=s(),{activeDialog:n,closeDialog:i,openDialog:a}=r(),o=r(e=>e.setWelcomeVisible),l=r(e=>e.setFooterMessage),{executeCurrentQuery:f,executeCurrentStatement:p,executeWholeScript:m,addNewQueryTab:h,disconnectActive:g}=se(),{capabilities:ge}=fe(),ye=y(),L=_(e=>e.activeConnections.find(t=>t.id===e.activeConnectionId)),be=_(e=>e.activeConnectionId?e.transactionOpen[e.activeConnectionId]??!1:!1),xe=_(e=>e.updateProfile),Se=ie(e=>e.themeId),He=ie(e=>e.setTheme),Ue=v(e=>e.locale),We=v(e=>e.setLocale),Ge=n===`quick-command`,z=L!==void 0,B=b(e=>{let t=_.getState().activeConnectionId;if(!t)return!1;let n=e.activeTabId[t];return(e.tabs[t]??ee).find(e=>e.id===n)?.isExecuting??!1});async function Ke(){let e=_.getState().activeConnectionId;if(!e)return;let t=x(await S(e));t&&r.getState().setFooterMessage(t)}let V=(0,R.useCallback)(e=>{i(),e()},[i]),H=(0,R.useCallback)(e=>l(e instanceof Error?e.message:String(e)),[l]),qe=()=>{let e=_.getState().activeConnectionId;e&&(T.getState().openERD(e),t(`erd_open`),b.getState().setActiveQueryTab(e,`erd`))},Je=[{heading:e(`palette.groups.connection`),commands:[{id:`connect`,label:e(`palette.commands.connect`),icon:Pe,tone:`sky`,shortcut:`Alt+N`,keywords:[`connect`,`server`,`profile`,`login`],disabled:!ye,action:()=>V(()=>a(`connect`))},{id:`disconnect`,label:e(`palette.commands.disconnect`),icon:ce,tone:`red`,keywords:[`disconnect`,`close`],disabled:!z,action:()=>V(()=>{g()})},{id:`read-only`,label:e(`menu.connection.readOnly`),icon:D,tone:`yellow`,keywords:[`read only`,`safety`,`guard`],disabled:!z,checked:L?.readOnly===!0,action:()=>V(()=>{L&&xe(L.id,{readOnly:!L.readOnly})})},{id:`manual-transactions`,capability:`transactions`,label:e(`menu.connection.manualTransactions`),icon:M,tone:`lavender`,keywords:[`transaction`,`manual`,`autocommit`],disabled:!z,checked:L?.transactionMode===`manual`,action:()=>V(()=>{L&&xe(L.id,{transactionMode:L.transactionMode===`manual`?`auto`:`manual`})})},{id:`commit`,capability:`transactions`,label:e(`toolbar.commit`),icon:P,tone:`green`,keywords:[`commit`,`transaction`],disabled:!be||!L,action:()=>V(()=>{L&&w(L.id).catch(H)})},{id:`rollback`,capability:`transactions`,label:e(`toolbar.rollback`),icon:ue,tone:`peach`,keywords:[`rollback`,`transaction`,`undo`],disabled:!be||!L,action:()=>V(()=>{L&&C(L.id).catch(H)})}]},{heading:e(`palette.groups.query`),commands:[{id:`execute`,label:e(`palette.commands.executeQuery`),icon:he,tone:`green`,shortcut:`F9`,keywords:[`run`,`execute`,`sql`],disabled:!z,action:()=>V(()=>{f()})},{id:`stop-query`,label:e(`result.running.stop`),icon:me,tone:`red`,keywords:[`stop`,`cancel`,`abort`,`kill`],disabled:!B,action:()=>V(()=>{Ke()})},{id:`execute-statement`,label:e(`menu.query.executeStatementAtCursor`),icon:Te,tone:`green`,shortcut:`Ctrl+Enter`,keywords:[`run`,`statement`,`cursor`],disabled:!z,action:()=>V(()=>{p()})},{id:`execute-script`,label:e(`menu.query.executeWholeScript`),icon:Re,tone:`teal`,shortcut:`Ctrl+Shift+Enter`,keywords:[`run`,`script`,`batch`],disabled:!z,action:()=>V(()=>{m()})},{id:`new-tab`,label:e(`palette.commands.newQueryTab`),icon:E,tone:`blue`,shortcut:`Alt+T`,keywords:[`new`,`tab`,`editor`],disabled:!z,action:()=>V(()=>h())},{id:`find-replace`,label:e(`menu.query.findReplace`),icon:Fe,tone:`lavender`,keywords:[`find`,`replace`,`search`],disabled:!z,action:()=>V(()=>a(`find-replace`))},{id:`local-history`,label:e(`menu.query.localHistory`),icon:je,tone:`mauve`,keywords:[`history`,`snapshot`,`undo`],disabled:!z,action:()=>V(()=>a(`local-history`))}]},{heading:e(`palette.groups.database`),commands:[{id:`create-db`,capability:`multipleDatabases`,label:e(`palette.commands.createDatabase`),icon:A,tone:`blue`,keywords:[`create`,`database`,`schema`],disabled:!z,action:()=>V(()=>a(`create-database`))},{id:`alter-db`,capability:`multipleDatabases`,label:e(`menu.database.alter`),icon:Ee,tone:`blue`,keywords:[`alter`,`database`,`charset`],disabled:!z,action:()=>V(()=>a(`alter-database`))},{id:`copy-db`,capability:`multipleDatabases`,label:e(`menu.database.copy`),icon:j,tone:`sky`,keywords:[`copy`,`clone`,`database`],disabled:!z,action:()=>V(()=>a(`copy-database`))},{id:`schema-diff`,label:e(`menu.database.compare`),icon:ke,tone:`mauve`,keywords:[`compare`,`diff`,`schema`,`sync`],pro:`compare_schemas`,disabled:!z,action:()=>V(()=>a(`schema-diff`))},{id:`data-diff`,label:e(`menu.database.compareData`),icon:Ae,tone:`mauve`,keywords:[`compare`,`diff`,`data`,`rows`],pro:`compare_data`,disabled:!z,action:()=>V(()=>a(`data-diff`))},{id:`group-by`,label:e(`menu.database.groupBy`),icon:_e,tone:`mauve`,keywords:[`group`,`count`,`aggregate`,`distinct`,`summary`],disabled:!z,action:()=>V(()=>a(`group-by`))}]},{heading:e(`palette.groups.table`),commands:[{id:`create-table`,label:e(`palette.commands.createTable`),icon:ae,tone:`green`,keywords:[`create`,`table`],disabled:!z,action:()=>V(()=>a(`create-table`))},{id:`alter-table`,label:e(`palette.commands.alterTable`),icon:pe,tone:`yellow`,keywords:[`alter`,`table`,`column`],disabled:!z,action:()=>V(()=>a(`alter-table`))},{id:`duplicate-table`,label:e(`menu.table.duplicateStructure`),icon:we,tone:`teal`,keywords:[`duplicate`,`structure`,`table`],disabled:!z,action:()=>V(()=>a(`duplicate-table-structure`))}]},{heading:e(`menu.export.title`),commands:[{id:`export-csv`,label:e(`menu.export.csv`),icon:Oe,tone:`green`,keywords:[`export`,`csv`,`excel`],disabled:!z,action:()=>V(()=>a(`export-csv`))},{id:`export-html`,label:e(`menu.export.schemaHtml`),icon:De,tone:`peach`,keywords:[`export`,`html`,`schema`,`documentation`],disabled:!z,action:()=>V(()=>a(`export-html`))}]},{heading:e(`palette.groups.tools`),commands:[{id:`process-list`,capability:`processList`,label:e(`palette.commands.processList`),icon:O,tone:`red`,keywords:[`process`,`kill`,`connections`],disabled:!z,action:()=>V(()=>a(`process-list`))},{id:`variables`,capability:`variables`,label:e(`palette.commands.serverVariables`),icon:ze,tone:`lavender`,keywords:[`variables`,`server`,`settings`],disabled:!z,action:()=>V(()=>a(`variables`))},{id:`status`,capability:`status`,label:e(`palette.commands.serverStatus`),icon:le,tone:`teal`,keywords:[`status`,`server`,`metrics`],disabled:!z,action:()=>V(()=>a(`status`))},{id:`flush`,capability:`flush`,label:e(`palette.commands.flush`),icon:F,tone:`peach`,keywords:[`flush`,`cache`,`reload`],disabled:!z,action:()=>V(()=>a(`flush`))},{id:`user-manager`,capability:`users`,label:e(`palette.commands.userManager`),icon:oe,tone:`blue`,keywords:[`users`,`grants`,`privileges`],disabled:!z,action:()=>V(()=>a(`user-manager`))},{id:`scratchpad`,label:e(`menu.tools.scratchpad`),icon:I,tone:`yellow`,keywords:[`scratchpad`,`sqlite`,`local`],pro:`scratchpad`,action:()=>V(()=>{k().catch(H)})},{id:`federated`,label:e(`menu.tools.federated`),icon:Ve,tone:`mauve`,keywords:[`federated`,`cross`,`join`,`connections`],pro:`federated`,action:()=>V(()=>{re().catch(H)})},{id:`erd`,label:e(`menu.tools.viewErd`),icon:Ne,tone:`sky`,keywords:[`erd`,`diagram`,`relations`],disabled:!z,action:()=>V(qe)}]},{heading:e(`menu.settings.theme`),commands:N().map(e=>({id:`theme-${e.id}`,label:e.name,tone:`lavender`,keywords:[`theme`,`color`,`appearance`,`dark`,`light`,e.id],checked:Se===e.id,swatch:e,action:()=>V(()=>He(e.id))}))},{heading:e(`menu.settings.language`),commands:[`auto`,...d].map(t=>({id:`locale-${t}`,label:t===`auto`?e(`language.auto`,{name:e(`language.${u()}`)}):e(`language.${t}`),icon:Me,tone:`teal`,keywords:[`language`,`locale`,`i18n`,t],checked:Ue===t,action:()=>V(()=>We(t))}))},{heading:e(`menu.settings.title`),commands:[{id:`safety-settings`,label:e(`menu.settings.safety`),icon:Be,tone:`yellow`,keywords:[`safety`,`settings`,`row limit`,`preferences`],action:()=>V(()=>a(`safety-settings`))}]},{heading:e(`menu.help.title`),commands:[{id:`documentation`,label:e(`menu.help.documentation`),icon:Ce,tone:`blue`,keywords:[`docs`,`documentation`,`manual`,`help`],action:()=>V(()=>{window.open(de(),`_blank`,`noopener,noreferrer`)})},{id:`getting-started`,label:e(`menu.help.gettingStarted`),icon:Ie,tone:`green`,keywords:[`welcome`,`onboarding`,`sample`,`getting started`],action:()=>V(()=>o(!0))},{id:`terms`,label:e(`menu.help.terms`),icon:Le,tone:`peach`,keywords:[`terms`,`privacy`,`legal`],action:()=>V(()=>a(`terms`))},{id:`about`,label:e(`menu.help.about`),icon:te,tone:`sky`,keywords:[`about`,`version`,`agent`],action:()=>V(()=>a(`about`))}]}];function Ye(e){e||i()}let U=Je.map(e=>({...e,commands:e.commands.filter(e=>!e.capability||ge[e.capability])})).filter(e=>e.commands.length>0);return(0,$.jsxs)(wt,{open:Ge,onOpenChange:Ye,title:e(`palette.title`),description:e(`palette.description`),children:[(0,$.jsx)(Tt,{placeholder:e(`palette.inputPlaceholder`)}),(0,$.jsxs)(Et,{className:`max-h-[60vh]`,children:[(0,$.jsx)(Dt,{children:e(`palette.empty`)}),U.map(e=>(0,$.jsx)(Ot,{heading:e.heading,children:e.commands.map(t=>(0,$.jsxs)(kt,{value:`${e.heading} ${t.label}`,keywords:t.keywords,disabled:t.disabled,onSelect:()=>{(!t.pro||ne(t.pro))&&t.action()},children:[t.swatch?(0,$.jsx)(Mt,{theme:t.swatch}):t.icon?(0,$.jsx)(t.icon,{className:c(`size-4`,jt[t.tone])}):null,(0,$.jsx)(`span`,{className:`truncate`,children:t.label}),(0,$.jsxs)(`span`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:[t.pro&&(0,$.jsx)(ve,{className:`ml-0`}),t.checked&&(0,$.jsx)(P,{className:`size-3.5 text-catppuccin-green`}),t.shortcut&&(0,$.jsx)(At,{className:`ml-0`,children:t.shortcut})]})]},t.id))},e.heading))]})]})}export{Nt as QuickCommandPalette};
@@ -1 +1 @@
1
- import{l as e,m as t}from"./C0O3rJzW.js";import{t as n}from"./neLPq0_M.js";import{Rt as r}from"./C9ZwrwyI.js";var i={currency:`USD`,annualPerMonth:8,annualTotal:96,monthly:10},a=e=>`$${e}`,o=e(),s=`https://planche.dev/pricing/`;function c({highlight:e,innerRef:c}){let{t:l}=t(),u=e?[e,...n.filter(t=>t!==e)]:[...n];return(0,o.jsxs)(`div`,{className:`grid gap-3 rounded-xl border border-primary/50 bg-muted/20 p-4 shadow-[inset_0_0_0_1px_hsl(var(--primary)/0.15)]`,children:[(0,o.jsx)(`p`,{className:`text-[0.7rem] font-semibold uppercase tracking-[0.09em] text-muted-foreground`,children:`Pro`}),(0,o.jsxs)(`div`,{className:`grid gap-1`,children:[(0,o.jsxs)(`p`,{className:`flex items-baseline gap-1.5`,children:[(0,o.jsx)(`span`,{className:`text-3xl font-semibold leading-none text-foreground`,children:a(i.annualPerMonth)}),(0,o.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:l(`pro.perMonth`)})]}),(0,o.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:l(`pro.priceNote`,{annual:a(i.annualTotal),monthly:a(i.monthly)})})]}),(0,o.jsx)(`ul`,{className:`grid gap-2 text-xs`,children:u.map(t=>(0,o.jsxs)(`li`,{className:`flex gap-2`,children:[(0,o.jsx)(r,{className:`mt-0.5 size-3 shrink-0 ${t===e?`text-primary`:`text-emerald-500/80`}`}),(0,o.jsxs)(`span`,{className:`grid gap-0.5`,children:[(0,o.jsx)(`span`,{className:t===e?`font-medium text-foreground`:`text-foreground/90`,children:l(`pro.features.${t}`)}),(0,o.jsx)(`span`,{className:`text-muted-foreground`,children:l(`pro.featureDetails.${t}`)})]})]},t))}),(0,o.jsx)(`a`,{ref:c,href:s,target:`_blank`,rel:`noreferrer`,className:`rounded-md bg-primary px-4 py-2 text-center text-sm font-medium text-primary-foreground hover:opacity-90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,children:l(`pro.pricing`)})]})}export{c as t};
1
+ import{l as e,m as t}from"./C0O3rJzW.js";import{t as n}from"./neLPq0_M.js";import{Rt as r}from"./Bg6u9htc.js";var i={currency:`USD`,annualPerMonth:8,annualTotal:96,monthly:10},a=e=>`$${e}`,o=e(),s=`https://planche.dev/pricing/`;function c({highlight:e,innerRef:c}){let{t:l}=t(),u=e?[e,...n.filter(t=>t!==e)]:[...n];return(0,o.jsxs)(`div`,{className:`grid gap-3 rounded-xl border border-primary/50 bg-muted/20 p-4 shadow-[inset_0_0_0_1px_hsl(var(--primary)/0.15)]`,children:[(0,o.jsx)(`p`,{className:`text-[0.7rem] font-semibold uppercase tracking-[0.09em] text-muted-foreground`,children:`Pro`}),(0,o.jsxs)(`div`,{className:`grid gap-1`,children:[(0,o.jsxs)(`p`,{className:`flex items-baseline gap-1.5`,children:[(0,o.jsx)(`span`,{className:`text-3xl font-semibold leading-none text-foreground`,children:a(i.annualPerMonth)}),(0,o.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:l(`pro.perMonth`)})]}),(0,o.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:l(`pro.priceNote`,{annual:a(i.annualTotal),monthly:a(i.monthly)})})]}),(0,o.jsx)(`ul`,{className:`grid gap-2 text-xs`,children:u.map(t=>(0,o.jsxs)(`li`,{className:`flex gap-2`,children:[(0,o.jsx)(r,{className:`mt-0.5 size-3 shrink-0 ${t===e?`text-primary`:`text-emerald-500/80`}`}),(0,o.jsxs)(`span`,{className:`grid gap-0.5`,children:[(0,o.jsx)(`span`,{className:t===e?`font-medium text-foreground`:`text-foreground/90`,children:l(`pro.features.${t}`)}),(0,o.jsx)(`span`,{className:`text-muted-foreground`,children:l(`pro.featureDetails.${t}`)})]})]},t))}),(0,o.jsx)(`a`,{ref:c,href:s,target:`_blank`,rel:`noreferrer`,className:`rounded-md bg-primary px-4 py-2 text-center text-sm font-medium text-primary-foreground hover:opacity-90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,children:l(`pro.pricing`)})]})}export{c as t};
@@ -1 +1 @@
1
- import{r as e}from"./hePW80VL.js";import{h as t,n}from"./BkIkgVK5.js";import{l as r,m as i,t as a}from"./C0O3rJzW.js";import{F as o,L as s,N as c,P as l,c as u,jt as d,l as f,nt as p}from"./C9ZwrwyI.js";import{a as m,i as h,n as g,o as _,r as v,t as y}from"./Cg4DfVr4.js";import{t as b}from"./Ba8hC_60.js";var x=e(t(),1);function S(){let e=s(e=>e.status.state===`valid`);return!o()||e}var C=r(),w={offline:`sync.offline`,server:`sync.serverError`,unauthorized:`sync.serverError`,conflict:`sync.serverError`,"bad-passphrase":`sync.wrongPassphrase`,malformed:`sync.wrongPassphrase`,unsupported:`sync.serverError`};function T(){let e=n(e=>e.activeDialog),t=n(e=>e.closeDialog),{phase:r,user:o,busy:s,error:T,lastSyncedAt:E,vault:D,refresh:O,createVault:k,unlock:A,push:j,signOut:M,forgetVault:N,closeAccount:P,setError:F}=c(),{t:I}=i(),L=S(),[R,z]=(0,x.useState)(``),[B,V]=(0,x.useState)(``),[H,U]=(0,x.useState)(!1),[W,G]=(0,x.useState)(!1);(0,x.useEffect)(()=>{O()},[O]);let K=R.length>0&&R.length<10,q=B.length>0&&R!==B,J=R.length>=10&&R===B,Y=T?I(w[T]??`sync.serverError`):null,X=D?Object.keys(D.profiles).length:0,Z=()=>{z(``),V(``),F(null)};return(0,C.jsx)(y,{open:e===`sync`,onOpenChange:e=>{e||t()},children:(0,C.jsxs)(g,{className:`max-h-[85vh] overflow-y-auto sm:max-w-[560px]`,onOpenAutoFocus:e=>e.preventDefault(),children:[(0,C.jsxs)(m,{children:[(0,C.jsx)(_,{children:I(`sync.title`)}),(0,C.jsxs)(v,{children:[I(`sync.description`),o&&(0,C.jsx)(`span`,{className:`mt-1 block text-xs`,children:I(`sync.signedInAs`,{email:o.email??o.id})})]})]}),(0,C.jsxs)(`div`,{className:`grid gap-3 text-sm`,children:[(0,C.jsx)(`p`,{className:`rounded-md border bg-muted/40 p-3 text-xs text-muted-foreground`,children:I(`sync.stored`)}),r===`unavailable`&&(0,C.jsx)(`p`,{className:`rounded-md border border-amber-500/40 bg-amber-500/5 p-3 text-xs text-amber-600 dark:text-amber-400`,children:p()?I(`sync.unavailable`):I(`sync.notDeployed`)}),r===`signed-out`&&(0,C.jsxs)(a,{onClick:()=>{window.location.href=l(`github`,window.location.href)},children:[(0,C.jsx)(d,{className:`size-4`}),I(`sync.signIn`)]}),o&&!L&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:I(`sync.needsPro`)}),(0,C.jsx)(b,{highlight:`sync`})]}),L&&r===`no-vault`&&(0,C.jsxs)(`div`,{className:`grid gap-2`,children:[(0,C.jsx)(`p`,{className:`text-sm font-medium`,children:I(`sync.createTitle`)}),(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:I(`sync.createHint`)}),(0,C.jsx)(u,{htmlFor:`sync-pass`,children:I(`sync.passphrase`)}),(0,C.jsx)(f,{id:`sync-pass`,type:`password`,autoComplete:`new-password`,value:R,onChange:e=>{z(e.target.value),F(null)}}),(0,C.jsx)(u,{htmlFor:`sync-confirm`,children:I(`sync.confirm`)}),(0,C.jsx)(f,{id:`sync-confirm`,type:`password`,autoComplete:`new-password`,value:B,onChange:e=>{V(e.target.value),F(null)}}),K&&(0,C.jsx)(`p`,{className:`text-xs text-destructive`,children:I(`sync.tooShort`,{count:10})}),q&&(0,C.jsx)(`p`,{className:`text-xs text-destructive`,children:I(`sync.mismatch`)}),(0,C.jsx)(a,{disabled:!J||s,onClick:()=>{k(R).then(Z)},children:I(`sync.enable`)})]}),L&&r===`locked`&&(0,C.jsxs)(`div`,{className:`grid gap-2`,children:[(0,C.jsx)(`p`,{className:`text-sm font-medium`,children:I(`sync.unlockTitle`)}),(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:I(`sync.unlockHint`)}),(0,C.jsx)(u,{htmlFor:`sync-unlock`,children:I(`sync.passphrase`)}),(0,C.jsx)(f,{id:`sync-unlock`,type:`password`,autoComplete:`current-password`,value:R,onChange:e=>{z(e.target.value),F(null)}}),(0,C.jsx)(a,{disabled:!R||s,onClick:()=>{A(R).then(Z)},children:I(`sync.unlock`)})]}),L&&r===`ready`&&(0,C.jsxs)(`div`,{className:`grid gap-2`,children:[(0,C.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[E?I(`sync.lastSynced`,{when:new Date(E).toLocaleString()}):I(`sync.neverSynced`),` · `,I(`sync.profiles`,{count:X})]}),(0,C.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,C.jsx)(a,{variant:`secondary`,disabled:s,onClick:()=>{U(!1),j()},children:I(`sync.syncNow`)}),(0,C.jsx)(a,{variant:`ghost`,disabled:s,onClick:()=>{c.getState().lock(),Z()},children:I(`sync.changePassphrase`)})]}),H?(0,C.jsxs)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/5 p-3`,children:[(0,C.jsx)(`p`,{className:`mb-2 text-xs`,children:I(`sync.deleteVaultConfirm`)}),(0,C.jsxs)(`div`,{className:`flex gap-2`,children:[(0,C.jsx)(a,{variant:`destructive`,disabled:s,onClick:()=>{N().then(()=>U(!1))},children:I(`sync.deleteVault`)}),(0,C.jsx)(a,{variant:`ghost`,onClick:()=>U(!1),children:I(`settings.done`)})]})]}):(0,C.jsx)(a,{variant:`ghost`,className:`justify-start px-0 text-destructive`,onClick:()=>U(!0),children:I(`sync.deleteVault`)})]}),o&&(W?(0,C.jsxs)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/5 p-3`,children:[(0,C.jsx)(`p`,{className:`mb-2 text-xs`,children:I(`sync.deleteAccountConfirm`)}),(0,C.jsxs)(`div`,{className:`flex gap-2`,children:[(0,C.jsx)(a,{variant:`destructive`,disabled:s,onClick:()=>{P().then(()=>G(!1))},children:I(`sync.deleteAccount`)}),(0,C.jsx)(a,{variant:`ghost`,onClick:()=>G(!1),children:I(`settings.done`)})]})]}):(0,C.jsx)(`button`,{type:`button`,onClick:()=>G(!0),className:`w-fit rounded-sm text-xs text-muted-foreground underline underline-offset-2 hover:text-destructive focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:I(`sync.deleteAccount`)})),s&&(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:I(`sync.working`)}),Y&&(0,C.jsx)(`p`,{className:`text-xs text-destructive`,children:Y})]}),(0,C.jsxs)(h,{children:[o&&(0,C.jsx)(a,{variant:`ghost`,disabled:s,onClick:()=>{M().then(Z)},children:I(`sync.signOut`)}),(0,C.jsx)(a,{onClick:t,children:I(`settings.done`)})]})]})})}export{T as SyncDialog};
1
+ import{r as e}from"./hePW80VL.js";import{h as t,n}from"./BkIkgVK5.js";import{l as r,m as i,t as a}from"./C0O3rJzW.js";import{F as o,L as s,N as c,P as l,c as u,jt as d,l as f,nt as p}from"./Bg6u9htc.js";import{a as m,i as h,n as g,o as _,r as v,t as y}from"./Cg4DfVr4.js";import{t as b}from"./CnInyuhK.js";var x=e(t(),1);function S(){let e=s(e=>e.status.state===`valid`);return!o()||e}var C=r(),w={offline:`sync.offline`,server:`sync.serverError`,unauthorized:`sync.serverError`,conflict:`sync.serverError`,"bad-passphrase":`sync.wrongPassphrase`,malformed:`sync.wrongPassphrase`,unsupported:`sync.serverError`};function T(){let e=n(e=>e.activeDialog),t=n(e=>e.closeDialog),{phase:r,user:o,busy:s,error:T,lastSyncedAt:E,vault:D,refresh:O,createVault:k,unlock:A,push:j,signOut:M,forgetVault:N,closeAccount:P,setError:F}=c(),{t:I}=i(),L=S(),[R,z]=(0,x.useState)(``),[B,V]=(0,x.useState)(``),[H,U]=(0,x.useState)(!1),[W,G]=(0,x.useState)(!1);(0,x.useEffect)(()=>{O()},[O]);let K=R.length>0&&R.length<10,q=B.length>0&&R!==B,J=R.length>=10&&R===B,Y=T?I(w[T]??`sync.serverError`):null,X=D?Object.keys(D.profiles).length:0,Z=()=>{z(``),V(``),F(null)};return(0,C.jsx)(y,{open:e===`sync`,onOpenChange:e=>{e||t()},children:(0,C.jsxs)(g,{className:`max-h-[85vh] overflow-y-auto sm:max-w-[560px]`,onOpenAutoFocus:e=>e.preventDefault(),children:[(0,C.jsxs)(m,{children:[(0,C.jsx)(_,{children:I(`sync.title`)}),(0,C.jsxs)(v,{children:[I(`sync.description`),o&&(0,C.jsx)(`span`,{className:`mt-1 block text-xs`,children:I(`sync.signedInAs`,{email:o.email??o.id})})]})]}),(0,C.jsxs)(`div`,{className:`grid gap-3 text-sm`,children:[(0,C.jsx)(`p`,{className:`rounded-md border bg-muted/40 p-3 text-xs text-muted-foreground`,children:I(`sync.stored`)}),r===`unavailable`&&(0,C.jsx)(`p`,{className:`rounded-md border border-amber-500/40 bg-amber-500/5 p-3 text-xs text-amber-600 dark:text-amber-400`,children:p()?I(`sync.unavailable`):I(`sync.notDeployed`)}),r===`signed-out`&&(0,C.jsxs)(a,{onClick:()=>{window.location.href=l(`github`,window.location.href)},children:[(0,C.jsx)(d,{className:`size-4`}),I(`sync.signIn`)]}),o&&!L&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:I(`sync.needsPro`)}),(0,C.jsx)(b,{highlight:`sync`})]}),L&&r===`no-vault`&&(0,C.jsxs)(`div`,{className:`grid gap-2`,children:[(0,C.jsx)(`p`,{className:`text-sm font-medium`,children:I(`sync.createTitle`)}),(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:I(`sync.createHint`)}),(0,C.jsx)(u,{htmlFor:`sync-pass`,children:I(`sync.passphrase`)}),(0,C.jsx)(f,{id:`sync-pass`,type:`password`,autoComplete:`new-password`,value:R,onChange:e=>{z(e.target.value),F(null)}}),(0,C.jsx)(u,{htmlFor:`sync-confirm`,children:I(`sync.confirm`)}),(0,C.jsx)(f,{id:`sync-confirm`,type:`password`,autoComplete:`new-password`,value:B,onChange:e=>{V(e.target.value),F(null)}}),K&&(0,C.jsx)(`p`,{className:`text-xs text-destructive`,children:I(`sync.tooShort`,{count:10})}),q&&(0,C.jsx)(`p`,{className:`text-xs text-destructive`,children:I(`sync.mismatch`)}),(0,C.jsx)(a,{disabled:!J||s,onClick:()=>{k(R).then(Z)},children:I(`sync.enable`)})]}),L&&r===`locked`&&(0,C.jsxs)(`div`,{className:`grid gap-2`,children:[(0,C.jsx)(`p`,{className:`text-sm font-medium`,children:I(`sync.unlockTitle`)}),(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:I(`sync.unlockHint`)}),(0,C.jsx)(u,{htmlFor:`sync-unlock`,children:I(`sync.passphrase`)}),(0,C.jsx)(f,{id:`sync-unlock`,type:`password`,autoComplete:`current-password`,value:R,onChange:e=>{z(e.target.value),F(null)}}),(0,C.jsx)(a,{disabled:!R||s,onClick:()=>{A(R).then(Z)},children:I(`sync.unlock`)})]}),L&&r===`ready`&&(0,C.jsxs)(`div`,{className:`grid gap-2`,children:[(0,C.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[E?I(`sync.lastSynced`,{when:new Date(E).toLocaleString()}):I(`sync.neverSynced`),` · `,I(`sync.profiles`,{count:X})]}),(0,C.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,C.jsx)(a,{variant:`secondary`,disabled:s,onClick:()=>{U(!1),j()},children:I(`sync.syncNow`)}),(0,C.jsx)(a,{variant:`ghost`,disabled:s,onClick:()=>{c.getState().lock(),Z()},children:I(`sync.changePassphrase`)})]}),H?(0,C.jsxs)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/5 p-3`,children:[(0,C.jsx)(`p`,{className:`mb-2 text-xs`,children:I(`sync.deleteVaultConfirm`)}),(0,C.jsxs)(`div`,{className:`flex gap-2`,children:[(0,C.jsx)(a,{variant:`destructive`,disabled:s,onClick:()=>{N().then(()=>U(!1))},children:I(`sync.deleteVault`)}),(0,C.jsx)(a,{variant:`ghost`,onClick:()=>U(!1),children:I(`settings.done`)})]})]}):(0,C.jsx)(a,{variant:`ghost`,className:`justify-start px-0 text-destructive`,onClick:()=>U(!0),children:I(`sync.deleteVault`)})]}),o&&(W?(0,C.jsxs)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/5 p-3`,children:[(0,C.jsx)(`p`,{className:`mb-2 text-xs`,children:I(`sync.deleteAccountConfirm`)}),(0,C.jsxs)(`div`,{className:`flex gap-2`,children:[(0,C.jsx)(a,{variant:`destructive`,disabled:s,onClick:()=>{P().then(()=>G(!1))},children:I(`sync.deleteAccount`)}),(0,C.jsx)(a,{variant:`ghost`,onClick:()=>G(!1),children:I(`settings.done`)})]})]}):(0,C.jsx)(`button`,{type:`button`,onClick:()=>G(!0),className:`w-fit rounded-sm text-xs text-muted-foreground underline underline-offset-2 hover:text-destructive focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:I(`sync.deleteAccount`)})),s&&(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:I(`sync.working`)}),Y&&(0,C.jsx)(`p`,{className:`text-xs text-destructive`,children:Y})]}),(0,C.jsxs)(h,{children:[o&&(0,C.jsx)(a,{variant:`ghost`,disabled:s,onClick:()=>{M().then(Z)},children:I(`sync.signOut`)}),(0,C.jsx)(a,{onClick:t,children:I(`settings.done`)})]})]})})}export{T as SyncDialog};
@@ -1 +1 @@
1
- import{r as e}from"./hePW80VL.js";import{h as t,n}from"./BkIkgVK5.js";import{l as r,m as i,t as a}from"./C0O3rJzW.js";import{a as o}from"./BAZqI8g_.js";import{t as s}from"./DC8XCjJ3.js";import{c}from"./Dd9quIZg.js";import{t as l}from"./Dht5Mpyb.js";import{C as u,S as d,b as f,l as p,lt as m,v as h,x as g,y as _}from"./C9ZwrwyI.js";import{a as v,i as y,n as b,o as x,t as S}from"./Cg4DfVr4.js";var C=e(t(),1),w=r();function T(){let e=s.getState();return e.activeConnections.find(t=>t.id===e.activeConnectionId)?.serverConnectionId??null}async function E(e){let t=T();if(!t)throw Error(o.t(`command.noActiveConnection`));let n=l().getQuery(e===`global`?`SHOW_GLOBAL_STATUS`:`SHOW_SESSION_STATUS`);return(await c(t,n)).records.map(e=>({Variable_name:e[0],Value:e[1]}))}function D(){let{t:e}=i(),{activeDialog:t,closeDialog:r,setFooterMessage:o}=n(),[s,c]=(0,C.useState)([]),[l,T]=(0,C.useState)(``),[D,O]=(0,C.useState)(`session`),k=t===`status`,A=(0,C.useCallback)(t=>E(t).then(c).catch(t=>o(e(`command.status.loadError`,{message:t instanceof Error?t.message:String(t)}))),[o,e]);(0,C.useEffect)(()=>{k&&A(D)},[k,D,A]);let j=(0,C.useMemo)(()=>{if(!l.trim())return s;let e=l.toLowerCase();return s.filter(t=>t.Variable_name.toLowerCase().includes(e)||t.Value.toLowerCase().includes(e))},[s,l]);function M(e){e||(T(``),r())}function N(e){O(e)}return(0,w.jsx)(S,{open:k,onOpenChange:M,children:(0,w.jsxs)(b,{className:`sm:max-w-[900px] max-h-[80vh] flex flex-col`,children:[(0,w.jsx)(v,{children:(0,w.jsx)(x,{children:e(`command.status.title`)})}),(0,w.jsxs)(`div`,{className:`flex items-center gap-3 pb-2`,children:[(0,w.jsxs)(`div`,{className:`flex gap-1`,children:[(0,w.jsx)(a,{variant:D===`session`?`default`:`outline`,size:`sm`,onClick:()=>N(`session`),children:e(`command.scope.session`)}),(0,w.jsx)(a,{variant:D===`global`?`default`:`outline`,size:`sm`,onClick:()=>N(`global`),children:e(`command.scope.global`)})]}),(0,w.jsx)(p,{placeholder:e(`command.status.filterPlaceholder`),value:l,onChange:e=>T(e.target.value),className:`max-w-xs`})]}),(0,w.jsx)(`div`,{className:`flex-1 border rounded-md overflow-hidden min-h-0`,children:(0,w.jsx)(m,{className:`h-[400px]`,children:(0,w.jsxs)(h,{children:[(0,w.jsx)(d,{children:(0,w.jsxs)(u,{children:[(0,w.jsx)(g,{className:`w-[300px]`,children:e(`command.variableName`)}),(0,w.jsx)(g,{children:e(`command.value`)})]})}),(0,w.jsx)(_,{children:j.length===0?(0,w.jsx)(u,{children:(0,w.jsx)(f,{colSpan:2,className:`text-center text-muted-foreground`,children:e(`command.status.empty`)})}):j.map(e=>(0,w.jsxs)(u,{children:[(0,w.jsx)(f,{className:`font-mono text-xs`,children:e.Variable_name}),(0,w.jsx)(f,{className:`font-mono text-xs`,children:e.Value})]},e.Variable_name))})]})})}),(0,w.jsx)(y,{children:(0,w.jsx)(a,{variant:`outline`,onClick:()=>M(!1),children:e(`command.close`)})})]})})}export{D as StatusDialog};
1
+ import{r as e}from"./hePW80VL.js";import{h as t,n}from"./BkIkgVK5.js";import{l as r,m as i,t as a}from"./C0O3rJzW.js";import{a as o}from"./BAZqI8g_.js";import{t as s}from"./DC8XCjJ3.js";import{c}from"./Dd9quIZg.js";import{t as l}from"./Dht5Mpyb.js";import{C as u,S as d,b as f,l as p,lt as m,v as h,x as g,y as _}from"./Bg6u9htc.js";import{a as v,i as y,n as b,o as x,t as S}from"./Cg4DfVr4.js";var C=e(t(),1),w=r();function T(){let e=s.getState();return e.activeConnections.find(t=>t.id===e.activeConnectionId)?.serverConnectionId??null}async function E(e){let t=T();if(!t)throw Error(o.t(`command.noActiveConnection`));let n=l().getQuery(e===`global`?`SHOW_GLOBAL_STATUS`:`SHOW_SESSION_STATUS`);return(await c(t,n)).records.map(e=>({Variable_name:e[0],Value:e[1]}))}function D(){let{t:e}=i(),{activeDialog:t,closeDialog:r,setFooterMessage:o}=n(),[s,c]=(0,C.useState)([]),[l,T]=(0,C.useState)(``),[D,O]=(0,C.useState)(`session`),k=t===`status`,A=(0,C.useCallback)(t=>E(t).then(c).catch(t=>o(e(`command.status.loadError`,{message:t instanceof Error?t.message:String(t)}))),[o,e]);(0,C.useEffect)(()=>{k&&A(D)},[k,D,A]);let j=(0,C.useMemo)(()=>{if(!l.trim())return s;let e=l.toLowerCase();return s.filter(t=>t.Variable_name.toLowerCase().includes(e)||t.Value.toLowerCase().includes(e))},[s,l]);function M(e){e||(T(``),r())}function N(e){O(e)}return(0,w.jsx)(S,{open:k,onOpenChange:M,children:(0,w.jsxs)(b,{className:`sm:max-w-[900px] max-h-[80vh] flex flex-col`,children:[(0,w.jsx)(v,{children:(0,w.jsx)(x,{children:e(`command.status.title`)})}),(0,w.jsxs)(`div`,{className:`flex items-center gap-3 pb-2`,children:[(0,w.jsxs)(`div`,{className:`flex gap-1`,children:[(0,w.jsx)(a,{variant:D===`session`?`default`:`outline`,size:`sm`,onClick:()=>N(`session`),children:e(`command.scope.session`)}),(0,w.jsx)(a,{variant:D===`global`?`default`:`outline`,size:`sm`,onClick:()=>N(`global`),children:e(`command.scope.global`)})]}),(0,w.jsx)(p,{placeholder:e(`command.status.filterPlaceholder`),value:l,onChange:e=>T(e.target.value),className:`max-w-xs`})]}),(0,w.jsx)(`div`,{className:`flex-1 border rounded-md overflow-hidden min-h-0`,children:(0,w.jsx)(m,{className:`h-[400px]`,children:(0,w.jsxs)(h,{children:[(0,w.jsx)(d,{children:(0,w.jsxs)(u,{children:[(0,w.jsx)(g,{className:`w-[300px]`,children:e(`command.variableName`)}),(0,w.jsx)(g,{children:e(`command.value`)})]})}),(0,w.jsx)(_,{children:j.length===0?(0,w.jsx)(u,{children:(0,w.jsx)(f,{colSpan:2,className:`text-center text-muted-foreground`,children:e(`command.status.empty`)})}):j.map(e=>(0,w.jsxs)(u,{children:[(0,w.jsx)(f,{className:`font-mono text-xs`,children:e.Variable_name}),(0,w.jsx)(f,{className:`font-mono text-xs`,children:e.Value})]},e.Variable_name))})]})})}),(0,w.jsx)(y,{children:(0,w.jsx)(a,{variant:`outline`,onClick:()=>M(!1),children:e(`command.close`)})})]})})}export{D as StatusDialog};
@@ -1 +1 @@
1
- import{r as e}from"./hePW80VL.js";import{h as t,n}from"./BkIkgVK5.js";import{l as r,m as i,t as a}from"./C0O3rJzW.js";import{a as o,i as s,n as c,r as l,t as u}from"./BctsL19F.js";import{t as d}from"./DC8XCjJ3.js";import{c as f,l as p}from"./C9ZwrwyI.js";import{a as m,i as h,n as g,o as _,t as v}from"./Cg4DfVr4.js";import{n as y}from"./1XwwL8xu.js";var b=e(t(),1),x=r();function S(){let{t:e}=i(),{activeDialog:t,closeDialog:r,setFooterMessage:S}=n(),C=d(e=>e.activeConnectionId)??``,w=y(e=>e.addUser),[T,E]=(0,b.useState)(``),[D,O]=(0,b.useState)(`%`),[k,A]=(0,b.useState)(``),[j,M]=(0,b.useState)(``),[N,P]=(0,b.useState)(`caching_sha2_password`),F=t===`user-add`;function I(e){e||(L(),r())}function L(){E(``),O(`%`),A(``),M(``),P(`caching_sha2_password`)}function R(){if(!T.trim()){S(e(`user.add.usernameRequired`));return}if(k!==j){S(e(`user.add.passwordMismatch`));return}w(C,{user:T.trim(),host:D.trim()||`%`,privileges:[],maxQuestions:0,maxUpdates:0,maxConnections:0,maxUserConnections:0,plugin:N,authenticationString:``,passwordExpired:!1,accountLocked:!1}),S(e(`user.add.added`,{user:T,host:D})),L(),r()}return(0,x.jsx)(v,{open:F,onOpenChange:I,children:(0,x.jsxs)(g,{className:`sm:max-w-[450px]`,children:[(0,x.jsx)(m,{children:(0,x.jsx)(_,{children:e(`user.add.title`)})}),(0,x.jsxs)(`div`,{className:`space-y-4 py-2`,children:[(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(f,{htmlFor:`user-add-username`,children:e(`user.add.username`)}),(0,x.jsx)(p,{id:`user-add-username`,value:T,onChange:e=>E(e.target.value),placeholder:e(`user.add.usernamePlaceholder`)})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(f,{htmlFor:`user-add-host`,children:e(`user.add.host`)}),(0,x.jsx)(p,{id:`user-add-host`,value:D,onChange:e=>O(e.target.value),placeholder:`%`})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(f,{htmlFor:`user-add-password`,children:e(`user.add.password`)}),(0,x.jsx)(p,{id:`user-add-password`,type:`password`,value:k,onChange:e=>A(e.target.value),placeholder:e(`user.add.passwordPlaceholder`)})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(f,{htmlFor:`user-add-confirm-password`,children:e(`user.add.confirmPassword`)}),(0,x.jsx)(p,{id:`user-add-confirm-password`,type:`password`,value:j,onChange:e=>M(e.target.value),placeholder:e(`user.add.confirmPasswordPlaceholder`)})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(f,{children:e(`user.add.plugin`)}),(0,x.jsxs)(u,{value:N,onValueChange:P,children:[(0,x.jsx)(s,{className:`w-full`,children:(0,x.jsx)(o,{})}),(0,x.jsxs)(c,{children:[(0,x.jsx)(l,{value:`mysql_native_password`,children:`mysql_native_password`}),(0,x.jsx)(l,{value:`caching_sha2_password`,children:`caching_sha2_password`})]})]})]})]}),(0,x.jsxs)(h,{children:[(0,x.jsx)(a,{variant:`outline`,onClick:()=>I(!1),children:e(`user.add.cancel`)}),(0,x.jsx)(a,{onClick:R,children:e(`user.add.add`)})]})]})})}export{S as UserAddDialog};
1
+ import{r as e}from"./hePW80VL.js";import{h as t,n}from"./BkIkgVK5.js";import{l as r,m as i,t as a}from"./C0O3rJzW.js";import{a as o,i as s,n as c,r as l,t as u}from"./CUQISMvX.js";import{t as d}from"./DC8XCjJ3.js";import{c as f,l as p}from"./Bg6u9htc.js";import{a as m,i as h,n as g,o as _,t as v}from"./Cg4DfVr4.js";import{n as y}from"./1XwwL8xu.js";var b=e(t(),1),x=r();function S(){let{t:e}=i(),{activeDialog:t,closeDialog:r,setFooterMessage:S}=n(),C=d(e=>e.activeConnectionId)??``,w=y(e=>e.addUser),[T,E]=(0,b.useState)(``),[D,O]=(0,b.useState)(`%`),[k,A]=(0,b.useState)(``),[j,M]=(0,b.useState)(``),[N,P]=(0,b.useState)(`caching_sha2_password`),F=t===`user-add`;function I(e){e||(L(),r())}function L(){E(``),O(`%`),A(``),M(``),P(`caching_sha2_password`)}function R(){if(!T.trim()){S(e(`user.add.usernameRequired`));return}if(k!==j){S(e(`user.add.passwordMismatch`));return}w(C,{user:T.trim(),host:D.trim()||`%`,privileges:[],maxQuestions:0,maxUpdates:0,maxConnections:0,maxUserConnections:0,plugin:N,authenticationString:``,passwordExpired:!1,accountLocked:!1}),S(e(`user.add.added`,{user:T,host:D})),L(),r()}return(0,x.jsx)(v,{open:F,onOpenChange:I,children:(0,x.jsxs)(g,{className:`sm:max-w-[450px]`,children:[(0,x.jsx)(m,{children:(0,x.jsx)(_,{children:e(`user.add.title`)})}),(0,x.jsxs)(`div`,{className:`space-y-4 py-2`,children:[(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(f,{htmlFor:`user-add-username`,children:e(`user.add.username`)}),(0,x.jsx)(p,{id:`user-add-username`,value:T,onChange:e=>E(e.target.value),placeholder:e(`user.add.usernamePlaceholder`)})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(f,{htmlFor:`user-add-host`,children:e(`user.add.host`)}),(0,x.jsx)(p,{id:`user-add-host`,value:D,onChange:e=>O(e.target.value),placeholder:`%`})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(f,{htmlFor:`user-add-password`,children:e(`user.add.password`)}),(0,x.jsx)(p,{id:`user-add-password`,type:`password`,value:k,onChange:e=>A(e.target.value),placeholder:e(`user.add.passwordPlaceholder`)})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(f,{htmlFor:`user-add-confirm-password`,children:e(`user.add.confirmPassword`)}),(0,x.jsx)(p,{id:`user-add-confirm-password`,type:`password`,value:j,onChange:e=>M(e.target.value),placeholder:e(`user.add.confirmPasswordPlaceholder`)})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(f,{children:e(`user.add.plugin`)}),(0,x.jsxs)(u,{value:N,onValueChange:P,children:[(0,x.jsx)(s,{className:`w-full`,children:(0,x.jsx)(o,{})}),(0,x.jsxs)(c,{children:[(0,x.jsx)(l,{value:`mysql_native_password`,children:`mysql_native_password`}),(0,x.jsx)(l,{value:`caching_sha2_password`,children:`caching_sha2_password`})]})]})]})]}),(0,x.jsxs)(h,{children:[(0,x.jsx)(a,{variant:`outline`,onClick:()=>I(!1),children:e(`user.add.cancel`)}),(0,x.jsx)(a,{onClick:R,children:e(`user.add.add`)})]})]})})}export{S as UserAddDialog};
@@ -1 +1 @@
1
- import{r as e}from"./hePW80VL.js";import{h as t,n,t as r}from"./BkIkgVK5.js";import{l as i,m as a,t as o}from"./C0O3rJzW.js";import{t as s}from"./DC8XCjJ3.js";import{a as c}from"./Dd9quIZg.js";import{n as l}from"./Dht5Mpyb.js";import{l as u,m as d}from"./nKNVMt3o.js";import{U as f,W as p,c as m,l as h}from"./C9ZwrwyI.js";import{a as g,i as _,n as v,o as y,t as b}from"./Cg4DfVr4.js";var x=e(t(),1),S=i();function C(){let{t:e}=a(),{activeDialog:t,closeDialog:i}=n(),C=r(`copy-database`),w=t===`copy-database`,T=C?.database??``,[E,D]=(0,x.useState)(``),[O,k]=(0,x.useState)(`structure_data`),[A,j]=(0,x.useState)(null),[M,N]=(0,x.useState)(null);function P(e){e||(i(),N(null),j(null),D(``),k(`structure_data`))}async function F(){let t=s.getState().activeConnectionId,n=E.trim();if(!t||!n||!T)return;N(null);let r=l(t),i=s.getState().activeConnections.find(e=>e.id===t);if(i?.serverConnectionId)try{j(e(`database.copy.creating`,{database:n})),await u(t,r.getQuery(`CREATE_DATABASE`,n,`utf8mb4`,`utf8mb4_general_ci`));let a=c(i.serverConnectionId),o=await r.introspect.listTables(a,T);for(let[r,i]of o.entries()){j(e(`database.copy.copying`,{table:i.name,index:r+1,total:o.length}));let a={connectionId:t,database:T,table:i.name},s={connectionId:t,database:n,table:i.name},c=await f(a,s);await p({source:a,target:s,mode:O,onConflict:`abort`,createSql:l(t).ddl.createTable(c)})}await d(t),P(!1)}catch(e){N(e instanceof Error?e.message:String(e))}finally{j(null)}}return(0,S.jsx)(b,{open:w,onOpenChange:P,children:(0,S.jsxs)(v,{className:`sm:max-w-[450px]`,children:[(0,S.jsx)(g,{children:(0,S.jsx)(y,{children:e(`database.copy.title`)})}),(0,S.jsxs)(`div`,{className:`space-y-4`,children:[(0,S.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,S.jsx)(m,{children:e(`database.copy.source`)}),(0,S.jsx)(h,{value:T,disabled:!0})]}),(0,S.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,S.jsx)(m,{htmlFor:`target-db-name`,children:e(`database.copy.target`)}),(0,S.jsx)(h,{id:`target-db-name`,value:E,onChange:e=>D(e.target.value),placeholder:e(`database.copy.targetPlaceholder`)})]}),(0,S.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,S.jsx)(m,{children:e(`database.copy.options`)}),(0,S.jsxs)(`div`,{className:`space-y-2`,children:[(0,S.jsxs)(`label`,{className:`flex items-center gap-2 text-sm cursor-pointer`,children:[(0,S.jsx)(`input`,{type:`radio`,name:`copy-option`,value:`structure_data`,checked:O===`structure_data`,onChange:()=>k(`structure_data`)}),e(`database.copy.structureAndData`)]}),(0,S.jsxs)(`label`,{className:`flex items-center gap-2 text-sm cursor-pointer`,children:[(0,S.jsx)(`input`,{type:`radio`,name:`copy-option`,value:`structure_only`,checked:O===`structure_only`,onChange:()=>k(`structure_only`)}),e(`database.copy.structureOnly`)]})]})]})]}),A&&(0,S.jsx)(`p`,{className:`px-1 text-xs text-muted-foreground`,children:A}),M&&(0,S.jsx)(`p`,{className:`px-1 text-xs text-destructive leading-relaxed`,children:M}),(0,S.jsxs)(_,{children:[(0,S.jsx)(o,{variant:`outline`,onClick:()=>P(!1),children:e(`database.copy.cancel`)}),(0,S.jsx)(o,{onClick:()=>void F(),disabled:!E.trim()||A!==null,children:e(`database.copy.copy`)})]})]})})}export{C as CopyDatabaseDialog};
1
+ import{r as e}from"./hePW80VL.js";import{h as t,n,t as r}from"./BkIkgVK5.js";import{l as i,m as a,t as o}from"./C0O3rJzW.js";import{t as s}from"./DC8XCjJ3.js";import{a as c}from"./Dd9quIZg.js";import{n as l}from"./Dht5Mpyb.js";import{l as u,m as d}from"./DnJeTfn9.js";import{U as f,W as p,c as m,l as h}from"./Bg6u9htc.js";import{a as g,i as _,n as v,o as y,t as b}from"./Cg4DfVr4.js";var x=e(t(),1),S=i();function C(){let{t:e}=a(),{activeDialog:t,closeDialog:i}=n(),C=r(`copy-database`),w=t===`copy-database`,T=C?.database??``,[E,D]=(0,x.useState)(``),[O,k]=(0,x.useState)(`structure_data`),[A,j]=(0,x.useState)(null),[M,N]=(0,x.useState)(null);function P(e){e||(i(),N(null),j(null),D(``),k(`structure_data`))}async function F(){let t=s.getState().activeConnectionId,n=E.trim();if(!t||!n||!T)return;N(null);let r=l(t),i=s.getState().activeConnections.find(e=>e.id===t);if(i?.serverConnectionId)try{j(e(`database.copy.creating`,{database:n})),await u(t,r.getQuery(`CREATE_DATABASE`,n,`utf8mb4`,`utf8mb4_general_ci`));let a=c(i.serverConnectionId),o=await r.introspect.listTables(a,T);for(let[r,i]of o.entries()){j(e(`database.copy.copying`,{table:i.name,index:r+1,total:o.length}));let a={connectionId:t,database:T,table:i.name},s={connectionId:t,database:n,table:i.name},c=await f(a,s);await p({source:a,target:s,mode:O,onConflict:`abort`,createSql:l(t).ddl.createTable(c)})}await d(t),P(!1)}catch(e){N(e instanceof Error?e.message:String(e))}finally{j(null)}}return(0,S.jsx)(b,{open:w,onOpenChange:P,children:(0,S.jsxs)(v,{className:`sm:max-w-[450px]`,children:[(0,S.jsx)(g,{children:(0,S.jsx)(y,{children:e(`database.copy.title`)})}),(0,S.jsxs)(`div`,{className:`space-y-4`,children:[(0,S.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,S.jsx)(m,{children:e(`database.copy.source`)}),(0,S.jsx)(h,{value:T,disabled:!0})]}),(0,S.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,S.jsx)(m,{htmlFor:`target-db-name`,children:e(`database.copy.target`)}),(0,S.jsx)(h,{id:`target-db-name`,value:E,onChange:e=>D(e.target.value),placeholder:e(`database.copy.targetPlaceholder`)})]}),(0,S.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,S.jsx)(m,{children:e(`database.copy.options`)}),(0,S.jsxs)(`div`,{className:`space-y-2`,children:[(0,S.jsxs)(`label`,{className:`flex items-center gap-2 text-sm cursor-pointer`,children:[(0,S.jsx)(`input`,{type:`radio`,name:`copy-option`,value:`structure_data`,checked:O===`structure_data`,onChange:()=>k(`structure_data`)}),e(`database.copy.structureAndData`)]}),(0,S.jsxs)(`label`,{className:`flex items-center gap-2 text-sm cursor-pointer`,children:[(0,S.jsx)(`input`,{type:`radio`,name:`copy-option`,value:`structure_only`,checked:O===`structure_only`,onChange:()=>k(`structure_only`)}),e(`database.copy.structureOnly`)]})]})]})]}),A&&(0,S.jsx)(`p`,{className:`px-1 text-xs text-muted-foreground`,children:A}),M&&(0,S.jsx)(`p`,{className:`px-1 text-xs text-destructive leading-relaxed`,children:M}),(0,S.jsxs)(_,{children:[(0,S.jsx)(o,{variant:`outline`,onClick:()=>P(!1),children:e(`database.copy.cancel`)}),(0,S.jsx)(o,{onClick:()=>void F(),disabled:!E.trim()||A!==null,children:e(`database.copy.copy`)})]})]})})}export{C as CopyDatabaseDialog};
@@ -1 +1 @@
1
- import{r as e}from"./hePW80VL.js";import{h as t,n}from"./BkIkgVK5.js";import{a as r,i,l as a,m as o,t as s}from"./C0O3rJzW.js";import{a as c}from"./BAZqI8g_.js";import{t as l}from"./DC8XCjJ3.js";import{c as u}from"./Dd9quIZg.js";import{t as d}from"./Dht5Mpyb.js";import{Bt as f,C as p,Ht as ee,Nt as te,Rt as ne,S as re,St as ie,Vt as ae,b as m,v as h,x as g,xt as _,y as oe}from"./C9ZwrwyI.js";import{a as se,i as ce,n as le,o as ue,t as de}from"./Cg4DfVr4.js";var v=r(`list-ordered`,[[`path`,{d:`M11 5h10`,key:`1cz7ny`}],[`path`,{d:`M11 12h10`,key:`1438ji`}],[`path`,{d:`M11 19h10`,key:`11t30w`}],[`path`,{d:`M4 4h1v5`,key:`10yrso`}],[`path`,{d:`M4 9h2`,key:`r1h2o0`}],[`path`,{d:`M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02`,key:`xtkcd5`}]]),y=r(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),b=r(`skull`,[[`path`,{d:`m12.5 17-.5-1-.5 1h1z`,key:`3me087`}],[`path`,{d:`M15 22a1 1 0 0 0 1-1v-1a2 2 0 0 0 1.56-3.25 8 8 0 1 0-11.12 0A2 2 0 0 0 8 20v1a1 1 0 0 0 1 1z`,key:`1o5pge`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}]]),x=r(`timer`,[[`line`,{x1:`10`,x2:`14`,y1:`2`,y2:`2`,key:`14vaq8`}],[`line`,{x1:`12`,x2:`15`,y1:`14`,y2:`11`,key:`17fdiu`}],[`circle`,{cx:`12`,cy:`14`,r:`8`,key:`1e1u0o`}]]),S=e(t(),1),C=a(),w=10,fe=[2,5,10,30];function T(){let e=l.getState();return e.activeConnections.find(t=>t.id===e.activeConnectionId)?.serverConnectionId??null}async function pe(){let e=T();if(!e)throw Error(c.t(`command.noActiveConnection`));let t=await u(e,d().getQuery(`SHOW_PROCESS_LIST`));return t.records.map(e=>{let n={};return t.fields.forEach((t,r)=>{n[t.name]=e[r]}),{...n,Id:String(n.Id)}})}function E(e){return/^(sleep|idle)/i.test(e.Command??``)}function me(e){return/lock/i.test(e.State??``)}function he(e){return/PROCESSLIST|pg_stat_activity/i.test(e.Info??``)}function D(e){let t=Number(e.Time);return Number.isFinite(t)?t:0}function O(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m ${e%60}s`:`${Math.floor(e/3600)}h ${Math.floor(e%3600/60)}m`}function k({icon:e,label:t,value:n,tone:r}){return(0,C.jsxs)(`div`,{className:`flex min-w-[120px] flex-1 items-center gap-2.5 rounded-md border bg-muted/30 px-3 py-1.5`,children:[(0,C.jsx)(`div`,{className:`flex size-7 shrink-0 items-center justify-center rounded-md [&_svg]:size-3.5 ${r===`warn`?`bg-catppuccin-yellow/15 text-catppuccin-yellow`:`bg-primary/10 text-primary`}`,children:e}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsx)(`div`,{className:`text-[10px] font-medium uppercase tracking-wide text-muted-foreground`,children:t}),(0,C.jsx)(`div`,{className:`truncate text-sm font-semibold tabular-nums`,children:n})]})]})}function A(){let{t:e}=o(),{activeDialog:t,closeDialog:r,setFooterMessage:a,requestDestructiveConfirm:c}=n(),[l,A]=(0,S.useState)([]),[j,M]=(0,S.useState)(!1),[N,P]=(0,S.useState)(5),[F,I]=(0,S.useState)(null),[L,R]=(0,S.useState)(``),[z,ge]=(0,S.useState)(!1),[B,_e]=(0,S.useState)(!0),[V,H]=(0,S.useState)(!1),[U,ve]=(0,S.useState)(null),[W,G]=(0,S.useState)(!1),K=(0,S.useRef)(null),q=t===`process-list`,J=(0,S.useCallback)(()=>Promise.resolve().then(()=>(H(!0),pe())).then(e=>{A(e),ve(new Date)}).catch(t=>a(e(`command.processList.loadError`,{message:t instanceof Error?t.message:String(t)}))).finally(()=>H(!1)),[a,e]);(0,S.useEffect)(()=>{q&&J()},[q,J]),(0,S.useEffect)(()=>(K.current&&=(clearInterval(K.current),null),j&&q&&(K.current=setInterval(()=>{J()},N*1e3)),()=>{K.current&&=(clearInterval(K.current),null)}),[j,N,q,J]);function Y(e){e||(M(!1),I(null),R(``),r())}let X=(0,S.useMemo)(()=>{let e=l.filter(E).length,t=l.filter(e=>!E(e)).reduce((e,t)=>Math.max(e,D(t)),0);return{total:l.length,active:l.length-e,idle:e,longest:t}},[l]),Z=(0,S.useMemo)(()=>{let e=L.trim().toLowerCase();return l.filter(t=>z&&E(t)?!1:!e||[t.Id,t.User,t.Host,t.db,t.Command,t.State,t.Info].some(t=>(t??``).toString().toLowerCase().includes(e))).sort((e,t)=>B?D(t)-D(e):D(e)-D(t))},[l,L,z,B]),Q=l.find(e=>e.Id===F)??null,ye=(0,S.useCallback)(()=>{Q?.Info&&navigator.clipboard.writeText(Q.Info).then(()=>{G(!0),setTimeout(()=>G(!1),1500)})},[Q]);async function $(t){let n=t??F;if(!n){a(e(`command.processList.selectToKill`));return}let r=T();if(!r)return;let i=l.find(e=>e.Id===n),o=d().getQuery(`KILL_QUERY`,String(n));if(await c({title:e(`command.processList.killConfirmTitle`,{id:n}),description:e(`command.processList.killConfirmDescription`,{user:i?.User??`?`,host:i?.Host??`?`}),confirmLabel:e(`command.processList.killProcess`),statements:[o]}))try{await u(r,o),a(e(`command.processList.killed`,{id:n})),F===n&&I(null),J()}catch(t){a(e(`command.processList.killError`,{message:t instanceof Error?t.message:String(t)}))}}return(0,C.jsx)(de,{open:q,onOpenChange:Y,children:(0,C.jsxs)(le,{className:`flex max-h-[85vh] flex-col sm:max-w-[1000px]`,children:[(0,C.jsx)(se,{children:(0,C.jsxs)(ue,{className:`flex items-center gap-2`,children:[e(`command.processList.title`),U&&(0,C.jsx)(`span`,{className:`text-xs font-normal text-muted-foreground`,children:e(`command.processList.updatedAt`,{time:U.toLocaleTimeString(void 0,{hour12:!1})})})]})}),(0,C.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,C.jsx)(k,{icon:(0,C.jsx)(v,{}),label:e(`command.processList.stats.total`),value:X.total}),(0,C.jsx)(k,{icon:(0,C.jsx)(ee,{}),label:e(`command.processList.stats.active`),value:X.active}),(0,C.jsx)(k,{icon:(0,C.jsx)(y,{}),label:e(`command.processList.stats.idle`),value:X.idle}),(0,C.jsx)(k,{icon:(0,C.jsx)(x,{}),label:e(`command.processList.stats.longest`),value:O(X.longest),tone:X.longest>=w?`warn`:void 0})]}),(0,C.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,C.jsxs)(`div`,{className:`relative`,children:[(0,C.jsx)(_,{className:`pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground`}),(0,C.jsx)(`input`,{className:`h-7 w-56 rounded border bg-background pl-7 pr-6 text-xs placeholder:text-muted-foreground`,placeholder:e(`command.processList.filterPlaceholder`),value:L,onChange:e=>R(e.target.value)}),L&&(0,C.jsx)(`button`,{type:`button`,className:`absolute right-1.5 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground`,onClick:()=>R(``),children:(0,C.jsx)(i,{className:`size-3`})})]}),(0,C.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-1.5 text-xs`,children:[(0,C.jsx)(`input`,{type:`checkbox`,className:`accent-primary`,checked:z,onChange:e=>ge(e.target.checked)}),e(`command.processList.hideIdle`)]}),(0,C.jsx)(`div`,{className:`flex-1`}),(0,C.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-1.5 text-xs`,children:[(0,C.jsx)(`input`,{type:`checkbox`,className:`accent-primary`,checked:j,onChange:e=>M(e.target.checked)}),e(`command.processList.autoRefresh`)]}),(0,C.jsx)(`select`,{className:`h-7 rounded border bg-background px-1.5 text-xs disabled:opacity-50`,value:N,onChange:e=>P(Number(e.target.value)),disabled:!j,children:fe.map(e=>(0,C.jsxs)(`option`,{value:e,children:[e,`s`]},e))}),(0,C.jsxs)(s,{variant:`outline`,size:`sm`,className:`h-7`,onClick:()=>{J()},disabled:V,children:[(0,C.jsx)(ie,{className:`mr-1 size-3.5 ${V?`animate-spin`:``}`}),e(`command.processList.refresh`)]})]}),(0,C.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto rounded-md border`,children:(0,C.jsxs)(h,{className:`text-xs`,children:[(0,C.jsx)(re,{className:`sticky top-0 z-10 bg-background`,children:(0,C.jsxs)(p,{children:[(0,C.jsx)(g,{className:`w-[70px]`,children:e(`command.processList.columns.id`)}),(0,C.jsx)(g,{className:`w-[100px]`,children:e(`command.processList.columns.user`)}),(0,C.jsx)(g,{className:`w-[130px]`,children:e(`command.processList.columns.host`)}),(0,C.jsx)(g,{className:`w-[100px]`,children:e(`command.processList.columns.db`)}),(0,C.jsx)(g,{className:`w-[90px]`,children:e(`command.processList.columns.command`)}),(0,C.jsx)(g,{className:`w-[80px] cursor-pointer select-none`,onClick:()=>_e(e=>!e),children:(0,C.jsxs)(`span`,{className:`flex items-center gap-1`,children:[e(`command.processList.columns.time`),B?(0,C.jsx)(ae,{className:`size-3 text-primary`}):(0,C.jsx)(f,{className:`size-3 text-primary`})]})}),(0,C.jsx)(g,{className:`w-[130px]`,children:e(`command.processList.columns.state`)}),(0,C.jsx)(g,{children:e(`command.processList.columns.info`)}),(0,C.jsx)(g,{className:`w-[50px]`})]})}),(0,C.jsx)(oe,{children:Z.length===0?(0,C.jsx)(p,{children:(0,C.jsx)(m,{colSpan:9,className:`py-8 text-center text-muted-foreground`,children:l.length===0?e(`command.processList.empty`):e(`command.processList.noMatch`)})}):Z.map(t=>{let n=E(t),r=D(t),i=!n&&r>=w,a=me(t),o=he(t);return(0,C.jsxs)(p,{"data-state":F===t.Id?`selected`:void 0,className:`cursor-pointer ${n?`text-muted-foreground`:``} ${a?`bg-destructive/5`:i?`bg-catppuccin-yellow/5`:``}`,onClick:()=>I(t.Id),children:[(0,C.jsx)(m,{className:`font-mono tabular-nums`,children:(0,C.jsxs)(`span`,{className:`flex items-center gap-1`,children:[t.Id,o&&(0,C.jsx)(`span`,{className:`rounded bg-primary/10 px-1 text-[9px] font-semibold text-primary`,title:e(`command.processList.selfHint`),children:e(`command.processList.self`)})]})}),(0,C.jsx)(m,{children:t.User}),(0,C.jsx)(m,{className:`font-mono`,children:t.Host}),(0,C.jsx)(m,{className:`font-mono`,children:t.db??``}),(0,C.jsx)(m,{children:(0,C.jsx)(`span`,{className:`rounded px-1.5 py-px text-[10px] font-medium ${n?`bg-muted`:`bg-green-500/10 text-green-600 dark:text-green-400`}`,children:t.Command})}),(0,C.jsx)(m,{className:`tabular-nums ${i?`font-semibold text-catppuccin-yellow`:``}`,children:O(r)}),(0,C.jsx)(m,{className:a?`font-medium text-destructive`:``,children:t.State}),(0,C.jsx)(m,{className:`max-w-[260px] truncate font-mono`,title:t.Info??``,children:t.Info??``}),(0,C.jsx)(m,{className:`text-right`,children:(0,C.jsx)(`button`,{type:`button`,className:`rounded p-1 text-muted-foreground hover:bg-destructive/10 hover:text-destructive`,title:e(`command.processList.kill`),onClick:e=>{e.stopPropagation(),$(t.Id)},children:(0,C.jsx)(b,{className:`size-3.5`})})})]},t.Id)})})]})}),Q&&(0,C.jsxs)(`div`,{className:`shrink-0 rounded-md border`,children:[(0,C.jsxs)(`div`,{className:`flex items-center gap-2 border-b bg-muted/30 px-3 py-1`,children:[(0,C.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wide text-muted-foreground`,children:e(`command.processList.statementOf`,{id:Q.Id})}),(0,C.jsxs)(`span`,{className:`text-[10px] text-muted-foreground`,children:[Q.User,`@`,Q.Host,Q.db?` · ${Q.db}`:``]}),(0,C.jsx)(`div`,{className:`flex-1`}),(0,C.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1 rounded px-1.5 py-0.5 text-[10px] text-muted-foreground hover:bg-muted hover:text-foreground disabled:opacity-40`,onClick:ye,disabled:!Q.Info,children:[W?(0,C.jsx)(ne,{className:`size-3`}):(0,C.jsx)(te,{className:`size-3`}),e(W?`command.processList.copied`:`command.processList.copy`)]})]}),(0,C.jsx)(`pre`,{className:`max-h-32 overflow-auto whitespace-pre-wrap break-words px-3 py-2 font-mono text-xs`,children:Q.Info||(0,C.jsx)(`span`,{className:`italic text-muted-foreground`,children:e(`command.processList.noStatement`)})})]}),(0,C.jsxs)(ce,{children:[(0,C.jsx)(s,{variant:`destructive`,onClick:()=>{$()},disabled:!F,children:e(`command.processList.killProcess`)}),(0,C.jsx)(s,{variant:`outline`,onClick:()=>Y(!1),children:e(`command.close`)})]})]})})}export{A as ProcessListDialog};
1
+ import{r as e}from"./hePW80VL.js";import{h as t,n}from"./BkIkgVK5.js";import{a as r,i,l as a,m as o,t as s}from"./C0O3rJzW.js";import{a as c}from"./BAZqI8g_.js";import{t as l}from"./DC8XCjJ3.js";import{c as u}from"./Dd9quIZg.js";import{t as d}from"./Dht5Mpyb.js";import{Bt as f,C as p,Ht as ee,Nt as te,Rt as ne,S as re,St as ie,Vt as ae,b as m,v as h,x as g,xt as _,y as oe}from"./Bg6u9htc.js";import{a as se,i as ce,n as le,o as ue,t as de}from"./Cg4DfVr4.js";var v=r(`list-ordered`,[[`path`,{d:`M11 5h10`,key:`1cz7ny`}],[`path`,{d:`M11 12h10`,key:`1438ji`}],[`path`,{d:`M11 19h10`,key:`11t30w`}],[`path`,{d:`M4 4h1v5`,key:`10yrso`}],[`path`,{d:`M4 9h2`,key:`r1h2o0`}],[`path`,{d:`M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02`,key:`xtkcd5`}]]),y=r(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),b=r(`skull`,[[`path`,{d:`m12.5 17-.5-1-.5 1h1z`,key:`3me087`}],[`path`,{d:`M15 22a1 1 0 0 0 1-1v-1a2 2 0 0 0 1.56-3.25 8 8 0 1 0-11.12 0A2 2 0 0 0 8 20v1a1 1 0 0 0 1 1z`,key:`1o5pge`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}]]),x=r(`timer`,[[`line`,{x1:`10`,x2:`14`,y1:`2`,y2:`2`,key:`14vaq8`}],[`line`,{x1:`12`,x2:`15`,y1:`14`,y2:`11`,key:`17fdiu`}],[`circle`,{cx:`12`,cy:`14`,r:`8`,key:`1e1u0o`}]]),S=e(t(),1),C=a(),w=10,fe=[2,5,10,30];function T(){let e=l.getState();return e.activeConnections.find(t=>t.id===e.activeConnectionId)?.serverConnectionId??null}async function pe(){let e=T();if(!e)throw Error(c.t(`command.noActiveConnection`));let t=await u(e,d().getQuery(`SHOW_PROCESS_LIST`));return t.records.map(e=>{let n={};return t.fields.forEach((t,r)=>{n[t.name]=e[r]}),{...n,Id:String(n.Id)}})}function E(e){return/^(sleep|idle)/i.test(e.Command??``)}function me(e){return/lock/i.test(e.State??``)}function he(e){return/PROCESSLIST|pg_stat_activity/i.test(e.Info??``)}function D(e){let t=Number(e.Time);return Number.isFinite(t)?t:0}function O(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m ${e%60}s`:`${Math.floor(e/3600)}h ${Math.floor(e%3600/60)}m`}function k({icon:e,label:t,value:n,tone:r}){return(0,C.jsxs)(`div`,{className:`flex min-w-[120px] flex-1 items-center gap-2.5 rounded-md border bg-muted/30 px-3 py-1.5`,children:[(0,C.jsx)(`div`,{className:`flex size-7 shrink-0 items-center justify-center rounded-md [&_svg]:size-3.5 ${r===`warn`?`bg-catppuccin-yellow/15 text-catppuccin-yellow`:`bg-primary/10 text-primary`}`,children:e}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsx)(`div`,{className:`text-[10px] font-medium uppercase tracking-wide text-muted-foreground`,children:t}),(0,C.jsx)(`div`,{className:`truncate text-sm font-semibold tabular-nums`,children:n})]})]})}function A(){let{t:e}=o(),{activeDialog:t,closeDialog:r,setFooterMessage:a,requestDestructiveConfirm:c}=n(),[l,A]=(0,S.useState)([]),[j,M]=(0,S.useState)(!1),[N,P]=(0,S.useState)(5),[F,I]=(0,S.useState)(null),[L,R]=(0,S.useState)(``),[z,ge]=(0,S.useState)(!1),[B,_e]=(0,S.useState)(!0),[V,H]=(0,S.useState)(!1),[U,ve]=(0,S.useState)(null),[W,G]=(0,S.useState)(!1),K=(0,S.useRef)(null),q=t===`process-list`,J=(0,S.useCallback)(()=>Promise.resolve().then(()=>(H(!0),pe())).then(e=>{A(e),ve(new Date)}).catch(t=>a(e(`command.processList.loadError`,{message:t instanceof Error?t.message:String(t)}))).finally(()=>H(!1)),[a,e]);(0,S.useEffect)(()=>{q&&J()},[q,J]),(0,S.useEffect)(()=>(K.current&&=(clearInterval(K.current),null),j&&q&&(K.current=setInterval(()=>{J()},N*1e3)),()=>{K.current&&=(clearInterval(K.current),null)}),[j,N,q,J]);function Y(e){e||(M(!1),I(null),R(``),r())}let X=(0,S.useMemo)(()=>{let e=l.filter(E).length,t=l.filter(e=>!E(e)).reduce((e,t)=>Math.max(e,D(t)),0);return{total:l.length,active:l.length-e,idle:e,longest:t}},[l]),Z=(0,S.useMemo)(()=>{let e=L.trim().toLowerCase();return l.filter(t=>z&&E(t)?!1:!e||[t.Id,t.User,t.Host,t.db,t.Command,t.State,t.Info].some(t=>(t??``).toString().toLowerCase().includes(e))).sort((e,t)=>B?D(t)-D(e):D(e)-D(t))},[l,L,z,B]),Q=l.find(e=>e.Id===F)??null,ye=(0,S.useCallback)(()=>{Q?.Info&&navigator.clipboard.writeText(Q.Info).then(()=>{G(!0),setTimeout(()=>G(!1),1500)})},[Q]);async function $(t){let n=t??F;if(!n){a(e(`command.processList.selectToKill`));return}let r=T();if(!r)return;let i=l.find(e=>e.Id===n),o=d().getQuery(`KILL_QUERY`,String(n));if(await c({title:e(`command.processList.killConfirmTitle`,{id:n}),description:e(`command.processList.killConfirmDescription`,{user:i?.User??`?`,host:i?.Host??`?`}),confirmLabel:e(`command.processList.killProcess`),statements:[o]}))try{await u(r,o),a(e(`command.processList.killed`,{id:n})),F===n&&I(null),J()}catch(t){a(e(`command.processList.killError`,{message:t instanceof Error?t.message:String(t)}))}}return(0,C.jsx)(de,{open:q,onOpenChange:Y,children:(0,C.jsxs)(le,{className:`flex max-h-[85vh] flex-col sm:max-w-[1000px]`,children:[(0,C.jsx)(se,{children:(0,C.jsxs)(ue,{className:`flex items-center gap-2`,children:[e(`command.processList.title`),U&&(0,C.jsx)(`span`,{className:`text-xs font-normal text-muted-foreground`,children:e(`command.processList.updatedAt`,{time:U.toLocaleTimeString(void 0,{hour12:!1})})})]})}),(0,C.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,C.jsx)(k,{icon:(0,C.jsx)(v,{}),label:e(`command.processList.stats.total`),value:X.total}),(0,C.jsx)(k,{icon:(0,C.jsx)(ee,{}),label:e(`command.processList.stats.active`),value:X.active}),(0,C.jsx)(k,{icon:(0,C.jsx)(y,{}),label:e(`command.processList.stats.idle`),value:X.idle}),(0,C.jsx)(k,{icon:(0,C.jsx)(x,{}),label:e(`command.processList.stats.longest`),value:O(X.longest),tone:X.longest>=w?`warn`:void 0})]}),(0,C.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,C.jsxs)(`div`,{className:`relative`,children:[(0,C.jsx)(_,{className:`pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground`}),(0,C.jsx)(`input`,{className:`h-7 w-56 rounded border bg-background pl-7 pr-6 text-xs placeholder:text-muted-foreground`,placeholder:e(`command.processList.filterPlaceholder`),value:L,onChange:e=>R(e.target.value)}),L&&(0,C.jsx)(`button`,{type:`button`,className:`absolute right-1.5 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground`,onClick:()=>R(``),children:(0,C.jsx)(i,{className:`size-3`})})]}),(0,C.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-1.5 text-xs`,children:[(0,C.jsx)(`input`,{type:`checkbox`,className:`accent-primary`,checked:z,onChange:e=>ge(e.target.checked)}),e(`command.processList.hideIdle`)]}),(0,C.jsx)(`div`,{className:`flex-1`}),(0,C.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-1.5 text-xs`,children:[(0,C.jsx)(`input`,{type:`checkbox`,className:`accent-primary`,checked:j,onChange:e=>M(e.target.checked)}),e(`command.processList.autoRefresh`)]}),(0,C.jsx)(`select`,{className:`h-7 rounded border bg-background px-1.5 text-xs disabled:opacity-50`,value:N,onChange:e=>P(Number(e.target.value)),disabled:!j,children:fe.map(e=>(0,C.jsxs)(`option`,{value:e,children:[e,`s`]},e))}),(0,C.jsxs)(s,{variant:`outline`,size:`sm`,className:`h-7`,onClick:()=>{J()},disabled:V,children:[(0,C.jsx)(ie,{className:`mr-1 size-3.5 ${V?`animate-spin`:``}`}),e(`command.processList.refresh`)]})]}),(0,C.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto rounded-md border`,children:(0,C.jsxs)(h,{className:`text-xs`,children:[(0,C.jsx)(re,{className:`sticky top-0 z-10 bg-background`,children:(0,C.jsxs)(p,{children:[(0,C.jsx)(g,{className:`w-[70px]`,children:e(`command.processList.columns.id`)}),(0,C.jsx)(g,{className:`w-[100px]`,children:e(`command.processList.columns.user`)}),(0,C.jsx)(g,{className:`w-[130px]`,children:e(`command.processList.columns.host`)}),(0,C.jsx)(g,{className:`w-[100px]`,children:e(`command.processList.columns.db`)}),(0,C.jsx)(g,{className:`w-[90px]`,children:e(`command.processList.columns.command`)}),(0,C.jsx)(g,{className:`w-[80px] cursor-pointer select-none`,onClick:()=>_e(e=>!e),children:(0,C.jsxs)(`span`,{className:`flex items-center gap-1`,children:[e(`command.processList.columns.time`),B?(0,C.jsx)(ae,{className:`size-3 text-primary`}):(0,C.jsx)(f,{className:`size-3 text-primary`})]})}),(0,C.jsx)(g,{className:`w-[130px]`,children:e(`command.processList.columns.state`)}),(0,C.jsx)(g,{children:e(`command.processList.columns.info`)}),(0,C.jsx)(g,{className:`w-[50px]`})]})}),(0,C.jsx)(oe,{children:Z.length===0?(0,C.jsx)(p,{children:(0,C.jsx)(m,{colSpan:9,className:`py-8 text-center text-muted-foreground`,children:l.length===0?e(`command.processList.empty`):e(`command.processList.noMatch`)})}):Z.map(t=>{let n=E(t),r=D(t),i=!n&&r>=w,a=me(t),o=he(t);return(0,C.jsxs)(p,{"data-state":F===t.Id?`selected`:void 0,className:`cursor-pointer ${n?`text-muted-foreground`:``} ${a?`bg-destructive/5`:i?`bg-catppuccin-yellow/5`:``}`,onClick:()=>I(t.Id),children:[(0,C.jsx)(m,{className:`font-mono tabular-nums`,children:(0,C.jsxs)(`span`,{className:`flex items-center gap-1`,children:[t.Id,o&&(0,C.jsx)(`span`,{className:`rounded bg-primary/10 px-1 text-[9px] font-semibold text-primary`,title:e(`command.processList.selfHint`),children:e(`command.processList.self`)})]})}),(0,C.jsx)(m,{children:t.User}),(0,C.jsx)(m,{className:`font-mono`,children:t.Host}),(0,C.jsx)(m,{className:`font-mono`,children:t.db??``}),(0,C.jsx)(m,{children:(0,C.jsx)(`span`,{className:`rounded px-1.5 py-px text-[10px] font-medium ${n?`bg-muted`:`bg-green-500/10 text-green-600 dark:text-green-400`}`,children:t.Command})}),(0,C.jsx)(m,{className:`tabular-nums ${i?`font-semibold text-catppuccin-yellow`:``}`,children:O(r)}),(0,C.jsx)(m,{className:a?`font-medium text-destructive`:``,children:t.State}),(0,C.jsx)(m,{className:`max-w-[260px] truncate font-mono`,title:t.Info??``,children:t.Info??``}),(0,C.jsx)(m,{className:`text-right`,children:(0,C.jsx)(`button`,{type:`button`,className:`rounded p-1 text-muted-foreground hover:bg-destructive/10 hover:text-destructive`,title:e(`command.processList.kill`),onClick:e=>{e.stopPropagation(),$(t.Id)},children:(0,C.jsx)(b,{className:`size-3.5`})})})]},t.Id)})})]})}),Q&&(0,C.jsxs)(`div`,{className:`shrink-0 rounded-md border`,children:[(0,C.jsxs)(`div`,{className:`flex items-center gap-2 border-b bg-muted/30 px-3 py-1`,children:[(0,C.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wide text-muted-foreground`,children:e(`command.processList.statementOf`,{id:Q.Id})}),(0,C.jsxs)(`span`,{className:`text-[10px] text-muted-foreground`,children:[Q.User,`@`,Q.Host,Q.db?` · ${Q.db}`:``]}),(0,C.jsx)(`div`,{className:`flex-1`}),(0,C.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1 rounded px-1.5 py-0.5 text-[10px] text-muted-foreground hover:bg-muted hover:text-foreground disabled:opacity-40`,onClick:ye,disabled:!Q.Info,children:[W?(0,C.jsx)(ne,{className:`size-3`}):(0,C.jsx)(te,{className:`size-3`}),e(W?`command.processList.copied`:`command.processList.copy`)]})]}),(0,C.jsx)(`pre`,{className:`max-h-32 overflow-auto whitespace-pre-wrap break-words px-3 py-2 font-mono text-xs`,children:Q.Info||(0,C.jsx)(`span`,{className:`italic text-muted-foreground`,children:e(`command.processList.noStatement`)})})]}),(0,C.jsxs)(ce,{children:[(0,C.jsx)(s,{variant:`destructive`,onClick:()=>{$()},disabled:!F,children:e(`command.processList.killProcess`)}),(0,C.jsx)(s,{variant:`outline`,onClick:()=>Y(!1),children:e(`command.close`)})]})]})})}export{A as ProcessListDialog};
@@ -1 +1 @@
1
- import{n as e}from"./BkIkgVK5.js";import{l as t,m as n,t as r}from"./C0O3rJzW.js";import{a as i,i as a,n as o,r as s,t as c}from"./BctsL19F.js";import{n as l}from"./DP94Ond0.js";import{c as u,l as d}from"./C9ZwrwyI.js";import{a as f,i as p,n as m,o as h,r as g,t as _}from"./Cg4DfVr4.js";import{t as v}from"./DyCj9S7N.js";var y=t();function b(){let t=e(e=>e.activeDialog),b=e(e=>e.closeDialog),x=l(),S=x.update,{t:C}=n();return(0,y.jsx)(_,{open:t===`query-settings`,onOpenChange:e=>{e||b()},children:(0,y.jsxs)(m,{className:`sm:max-w-[560px]`,children:[(0,y.jsxs)(f,{children:[(0,y.jsx)(h,{children:C(`settings.query.title`)}),(0,y.jsx)(g,{children:C(`settings.query.description`)})]}),(0,y.jsxs)(`div`,{className:`grid gap-2`,children:[(0,y.jsx)(v,{id:`s-dryrun`,checked:x.previewAffectedRows,onChange:e=>S({previewAffectedRows:e}),pro:!0,label:`Dry run`,hint:`Before an UPDATE or DELETE runs, read its WHERE (joins included) as a SELECT and show how many rows it would change, with a sample of them, to confirm.`}),(0,y.jsxs)(`div`,{className:`grid grid-cols-[1fr_140px] items-center gap-3 rounded-md border p-3`,children:[(0,y.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,y.jsx)(u,{htmlFor:`s-limit`,className:`text-sm font-medium`,children:`Result row limit`}),(0,y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`LIMIT appended to SELECTs that have none. 0 disables.`})]}),(0,y.jsx)(d,{id:`s-limit`,type:`number`,min:0,step:100,value:x.resultRowLimit,onChange:e=>S({resultRowLimit:Math.max(0,Number(e.target.value)||0)})})]}),(0,y.jsxs)(`div`,{className:`grid grid-cols-[1fr_200px] items-center gap-3 rounded-md border p-3`,children:[(0,y.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,y.jsx)(`span`,{className:`text-sm font-medium`,children:`F9 / Run button executes`}),(0,y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Ctrl+Enter always runs the statement at the cursor; Ctrl+Shift+Enter the whole script.`})]}),(0,y.jsxs)(c,{value:x.executeScope,onValueChange:e=>S({executeScope:e}),children:[(0,y.jsx)(a,{children:(0,y.jsx)(i,{})}),(0,y.jsxs)(o,{children:[(0,y.jsx)(s,{value:`script`,children:`Whole script`}),(0,y.jsx)(s,{value:`statement`,children:`Statement at cursor`})]})]})]})]}),(0,y.jsx)(p,{children:(0,y.jsx)(r,{onClick:b,children:C(`settings.done`)})})]})})}export{b as QuerySettingsDialog};
1
+ import{n as e}from"./BkIkgVK5.js";import{l as t,m as n,t as r}from"./C0O3rJzW.js";import{a as i,i as a,n as o,r as s,t as c}from"./CUQISMvX.js";import{n as l}from"./DP94Ond0.js";import{c as u,l as d}from"./Bg6u9htc.js";import{a as f,i as p,n as m,o as h,r as g,t as _}from"./Cg4DfVr4.js";import{t as v}from"./DYuA_YQr.js";var y=t();function b(){let t=e(e=>e.activeDialog),b=e(e=>e.closeDialog),x=l(),S=x.update,{t:C}=n();return(0,y.jsx)(_,{open:t===`query-settings`,onOpenChange:e=>{e||b()},children:(0,y.jsxs)(m,{className:`sm:max-w-[560px]`,children:[(0,y.jsxs)(f,{children:[(0,y.jsx)(h,{children:C(`settings.query.title`)}),(0,y.jsx)(g,{children:C(`settings.query.description`)})]}),(0,y.jsxs)(`div`,{className:`grid gap-2`,children:[(0,y.jsx)(v,{id:`s-dryrun`,checked:x.previewAffectedRows,onChange:e=>S({previewAffectedRows:e}),pro:!0,label:`Dry run`,hint:`Before an UPDATE or DELETE runs, read its WHERE (joins included) as a SELECT and show how many rows it would change, with a sample of them, to confirm.`}),(0,y.jsxs)(`div`,{className:`grid grid-cols-[1fr_140px] items-center gap-3 rounded-md border p-3`,children:[(0,y.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,y.jsx)(u,{htmlFor:`s-limit`,className:`text-sm font-medium`,children:`Result row limit`}),(0,y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`LIMIT appended to SELECTs that have none. 0 disables.`})]}),(0,y.jsx)(d,{id:`s-limit`,type:`number`,min:0,step:100,value:x.resultRowLimit,onChange:e=>S({resultRowLimit:Math.max(0,Number(e.target.value)||0)})})]}),(0,y.jsxs)(`div`,{className:`grid grid-cols-[1fr_200px] items-center gap-3 rounded-md border p-3`,children:[(0,y.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,y.jsx)(`span`,{className:`text-sm font-medium`,children:`F9 / Run button executes`}),(0,y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Ctrl+Enter always runs the statement at the cursor; Ctrl+Shift+Enter the whole script.`})]}),(0,y.jsxs)(c,{value:x.executeScope,onValueChange:e=>S({executeScope:e}),children:[(0,y.jsx)(a,{children:(0,y.jsx)(i,{})}),(0,y.jsxs)(o,{children:[(0,y.jsx)(s,{value:`script`,children:`Whole script`}),(0,y.jsx)(s,{value:`statement`,children:`Statement at cursor`})]})]})]})]}),(0,y.jsx)(p,{children:(0,y.jsx)(r,{onClick:b,children:C(`settings.done`)})})]})})}export{b as QuerySettingsDialog};
@@ -1 +1 @@
1
- import{n as e}from"./BkIkgVK5.js";import{l as t,m as n,t as r}from"./C0O3rJzW.js";import{K as i,t as a}from"./C9ZwrwyI.js";import{a as o,i as s,n as c,o as l,r as u,t as d}from"./Cg4DfVr4.js";var f=t(),p=`https://planche.dev`,m=`/third-party-notices.txt`;function h(){let t=e(e=>e.activeDialog),h=e(e=>e.closeDialog),{t:g}=n();return(0,f.jsx)(d,{open:t===`about`,onOpenChange:e=>{e||h()},children:(0,f.jsxs)(c,{className:`sm:max-w-[440px]`,children:[(0,f.jsx)(o,{children:(0,f.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,f.jsx)(a,{size:44,className:`shrink-0`}),(0,f.jsxs)(`div`,{className:`grid gap-1`,children:[(0,f.jsx)(l,{children:g(`about.title`)}),(0,f.jsx)(u,{children:g(`about.tagline`)})]})]})}),(0,f.jsxs)(`div`,{className:`grid gap-3 text-sm`,children:[(0,f.jsxs)(`dl`,{className:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-1`,children:[(0,f.jsx)(`dt`,{className:`text-muted-foreground`,children:g(`about.version`)}),(0,f.jsx)(`dd`,{children:`0.1.1`}),(0,f.jsx)(`dt`,{className:`text-muted-foreground`,children:g(`about.website`)}),(0,f.jsx)(`dd`,{children:(0,f.jsx)(`a`,{href:p,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2`,children:p})}),(0,f.jsx)(`dt`,{className:`text-muted-foreground`,children:g(`about.licenses`)}),(0,f.jsx)(`dd`,{children:(0,f.jsx)(`a`,{href:m,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2`,children:g(`about.licensesLink`)})}),(0,f.jsx)(`dt`,{className:`text-muted-foreground`,children:g(`about.legal`)}),(0,f.jsxs)(`dd`,{className:`flex gap-3`,children:[(0,f.jsx)(`a`,{href:i.terms,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2`,children:g(`about.terms`)}),(0,f.jsx)(`a`,{href:i.privacy,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2`,children:g(`about.privacy`)}),(0,f.jsx)(`a`,{href:i.refund,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2`,children:g(`about.refund`)})]})]}),(0,f.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`© 2026 Juwon Jeong. `,g(`about.rights`)]}),(0,f.jsx)(`p`,{className:`rounded-md border bg-muted/40 p-3 text-xs text-muted-foreground`,children:g(`about.disclaimer`)}),(0,f.jsxs)(`div`,{className:`rounded-md border border-amber-500/40 bg-amber-500/5 p-3 text-xs text-muted-foreground`,children:[(0,f.jsx)(`p`,{className:`mb-1 font-medium text-amber-600 dark:text-amber-400`,children:g(`pro.noticeTitle`)}),(0,f.jsx)(`p`,{children:g(`pro.notice`)})]})]}),(0,f.jsx)(s,{children:(0,f.jsx)(r,{onClick:h,children:g(`settings.done`)})})]})})}export{h as AboutDialog};
1
+ import{n as e}from"./BkIkgVK5.js";import{l as t,m as n,t as r}from"./C0O3rJzW.js";import{K as i,t as a}from"./Bg6u9htc.js";import{a as o,i as s,n as c,o as l,r as u,t as d}from"./Cg4DfVr4.js";var f=t(),p=`https://planche.dev`,m=`/third-party-notices.txt`;function h(){let t=e(e=>e.activeDialog),h=e(e=>e.closeDialog),{t:g}=n();return(0,f.jsx)(d,{open:t===`about`,onOpenChange:e=>{e||h()},children:(0,f.jsxs)(c,{className:`sm:max-w-[440px]`,children:[(0,f.jsx)(o,{children:(0,f.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,f.jsx)(a,{size:44,className:`shrink-0`}),(0,f.jsxs)(`div`,{className:`grid gap-1`,children:[(0,f.jsx)(l,{children:g(`about.title`)}),(0,f.jsx)(u,{children:g(`about.tagline`)})]})]})}),(0,f.jsxs)(`div`,{className:`grid gap-3 text-sm`,children:[(0,f.jsxs)(`dl`,{className:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-1`,children:[(0,f.jsx)(`dt`,{className:`text-muted-foreground`,children:g(`about.version`)}),(0,f.jsx)(`dd`,{children:`0.1.1`}),(0,f.jsx)(`dt`,{className:`text-muted-foreground`,children:g(`about.website`)}),(0,f.jsx)(`dd`,{children:(0,f.jsx)(`a`,{href:p,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2`,children:p})}),(0,f.jsx)(`dt`,{className:`text-muted-foreground`,children:g(`about.licenses`)}),(0,f.jsx)(`dd`,{children:(0,f.jsx)(`a`,{href:m,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2`,children:g(`about.licensesLink`)})}),(0,f.jsx)(`dt`,{className:`text-muted-foreground`,children:g(`about.legal`)}),(0,f.jsxs)(`dd`,{className:`flex gap-3`,children:[(0,f.jsx)(`a`,{href:i.terms,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2`,children:g(`about.terms`)}),(0,f.jsx)(`a`,{href:i.privacy,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2`,children:g(`about.privacy`)}),(0,f.jsx)(`a`,{href:i.refund,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2`,children:g(`about.refund`)})]})]}),(0,f.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`© 2026 Juwon Jeong. `,g(`about.rights`)]}),(0,f.jsx)(`p`,{className:`rounded-md border bg-muted/40 p-3 text-xs text-muted-foreground`,children:g(`about.disclaimer`)}),(0,f.jsxs)(`div`,{className:`rounded-md border border-amber-500/40 bg-amber-500/5 p-3 text-xs text-muted-foreground`,children:[(0,f.jsx)(`p`,{className:`mb-1 font-medium text-amber-600 dark:text-amber-400`,children:g(`pro.noticeTitle`)}),(0,f.jsx)(`p`,{children:g(`pro.notice`)})]})]}),(0,f.jsx)(s,{children:(0,f.jsx)(r,{onClick:h,children:g(`settings.done`)})})]})})}export{h as AboutDialog};
@@ -1 +1 @@
1
- import{l as e}from"./C0O3rJzW.js";import{z as t}from"./C9ZwrwyI.js";var n=e();function r({id:e,checked:r,onChange:i,label:a,hint:o,pro:s}){return(0,n.jsxs)(`label`,{htmlFor:e,className:`flex cursor-pointer items-start gap-3 rounded-md border p-3 hover:bg-accent/40`,children:[(0,n.jsx)(`input`,{id:e,type:`checkbox`,checked:r,onChange:e=>i(e.target.checked),className:`mt-0.5 size-4 accent-primary`}),(0,n.jsxs)(`span`,{className:`grid flex-1 gap-0.5`,children:[(0,n.jsxs)(`span`,{className:`flex items-center text-sm font-medium`,children:[a,s?(0,n.jsx)(t,{}):null]}),(0,n.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:o})]})]})}export{r as t};
1
+ import{l as e}from"./C0O3rJzW.js";import{z as t}from"./Bg6u9htc.js";var n=e();function r({id:e,checked:r,onChange:i,label:a,hint:o,pro:s}){return(0,n.jsxs)(`label`,{htmlFor:e,className:`flex cursor-pointer items-start gap-3 rounded-md border p-3 hover:bg-accent/40`,children:[(0,n.jsx)(`input`,{id:e,type:`checkbox`,checked:r,onChange:e=>i(e.target.checked),className:`mt-0.5 size-4 accent-primary`}),(0,n.jsxs)(`span`,{className:`grid flex-1 gap-0.5`,children:[(0,n.jsxs)(`span`,{className:`flex items-center text-sm font-medium`,children:[a,s?(0,n.jsx)(t,{}):null]}),(0,n.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:o})]})]})}export{r as t};
@@ -4,5 +4,5 @@ import{r as e}from"./hePW80VL.js";import{i as t}from"./BAZqI8g_.js";import{t as
4
4
  `}make(e,t,n){let r=this.input.slice(t,n),i={kind:e,value:r,start:t,end:n};return e===`identifier`&&(i.upper=r.toUpperCase()),i}next(){let e=this.input,t=this.pos,n=e[t];if(p(n)){let n=t+1;for(;n<e.length&&p(e[n]);)n++;return this.pos=n,this.make(`space`,t,n)}if(e.startsWith(this.delimiter,t))return this.pos=t+this.delimiter.length,this.make(`terminator`,t,this.pos);if(n===`#`&&this.syntax.hashComments)return this.lineComment(t);if(n===`-`&&e[t+1]===`-`){let n=e[t+2];if(!this.syntax.dashCommentNeedsSpace||n===void 0||p(n))return this.lineComment(t)}if(n===`/`&&e[t+1]===`*`){let n=e.indexOf(`*/`,t+2);return this.pos=n===-1?e.length:n+2,this.make(`comment`,t,this.pos)}if(n===`$`&&this.syntax.dollarQuotes){let n=/^\$([A-Za-z_\u0080-\uFFFF][A-Za-z0-9_\u0080-\uFFFF]*)?\$/.exec(e.slice(t,t+64));if(n){let r=e.indexOf(n[0],t+n[0].length);return this.pos=r===-1?e.length:r+n[0].length,this.make(`string`,t,this.pos)}}if((n===`e`||n===`E`)&&e[t+1]===`'`&&this.syntax.dollarQuotes){this.pos=t+1;let e=this.quoted(t+1,`'`,`string`,!0);return this.make(`string`,t,e.end)}if(n===`'`)return this.quoted(t,`'`,`string`,this.syntax.backslashEscapes);if(n===`"`)return this.syntax.doubleQuoteIsIdentifier?this.quoted(t,`"`,`quoted_identifier`,!1):this.quoted(t,`"`,`string`,this.syntax.backslashEscapes);if((n===`x`||n===`X`||n===`b`||n===`B`||n===`n`||n===`N`)&&e[t+1]===`'`){this.pos=t+1;let e=this.quoted(t+1,`'`,`string`,this.syntax.backslashEscapes);return this.make(`string`,t,e.end)}if(n==="`")return this.quoted(t,"`",`quoted_identifier`,!1);if(n===`[`&&this.syntax.bracketIdentifiers){let n=e.indexOf(`]`,t+1);return this.pos=n===-1?e.length:n+1,this.make(`quoted_identifier`,t,this.pos)}if(f(n)||n===`.`&&f(e[t+1]??``))return this.number(t);if(n===`@`){let n=t+1;if(e[n]===`@`&&n++,e[n]===`'`||e[n]===`"`||e[n]==="`"){let r=e[n];this.pos=n;let i=this.quoted(n,r,`string`,this.syntax.backslashEscapes);return this.make(`variable`,t,i.end)}for(;n<e.length&&(d(e[n])||e[n]===`.`);)n++;return this.pos=n,this.make(`variable`,t,n)}if((n===`:`||n===`$`)&&u(e[t+1]??``)&&e[t+1]!==`$`){let n=t+1;for(;n<e.length&&d(e[n]);)n++;return this.pos=n,this.make(`variable`,t,n)}if(n===`?`){let n=t+1;for(;n<e.length&&f(e[n]);)n++;return this.pos=n,this.make(`placeholder`,t,n)}if(u(n)){let n=t+1;for(;n<e.length&&d(e[n])&&!e.startsWith(this.delimiter,n);)n++;let r=e.slice(t,n).toUpperCase();if(r===`DELIMITER`&&this.syntax.delimiterCommand&&this.significantInStatement===0){let r=n;for(;r<e.length&&(e[r]===` `||e[r]===` `);)r++;let i=r;for(;i<e.length&&!p(e[i]);)i++;if(i>r)return this.delimiter=e.slice(r,i),this.pos=i,this.make(`delimiter_command`,t,i)}if(r===`GO`&&this.syntax.goBatchSeparator&&this.atLineStart(t)){let r=n;for(;r<e.length&&(e[r]===` `||e[r]===` `);)r++;for(;r<e.length&&f(e[r]);)r++;for(;r<e.length&&(e[r]===` `||e[r]===` `||e[r]===`\r`);)r++;if(r>=e.length||e[r]===`
5
5
  `)return this.pos=r,this.make(`delimiter_command`,t,r)}return this.pos=n,this.make(`identifier`,t,n)}if(n===`/`&&this.syntax.plsqlBlocks&&this.atLineStart(t)){let n=t+1;for(;n<e.length&&(e[n]===` `||e[n]===` `||e[n]===`\r`);)n++;if(n>=e.length||e[n]===`
6
6
  `)return this.pos=n,this.make(`delimiter_command`,t,n)}if(n===`(`)return this.pos=t+1,this.make(`lparen`,t,this.pos);if(n===`)`)return this.pos=t+1,this.make(`rparen`,t,this.pos);for(let n of l)if(e.startsWith(n,t))return this.pos=t+n.length,this.make(`operator`,t,this.pos);return`=<>!+-*/%^~&|`.includes(n)?(this.pos=t+1,this.make(`operator`,t,this.pos)):`,.;:[]{}`.includes(n)?(this.pos=t+1,this.make(`punct`,t,this.pos)):(this.pos=t+1,this.make(`unknown`,t,this.pos))}lineComment(e){let t=this.input,n=e;for(;n<t.length&&t[n]!==`
7
- `;)n++;return this.pos=n,this.make(`comment`,e,n)}quoted(e,t,n,r){let i=this.input,a=e+1;for(;a<i.length;){let e=i[a];if(r&&e===`\\`){a+=2;continue}if(e===t){if(i[a+1]===t){a+=2;continue}a++;break}a++}return this.pos=Math.min(a,i.length),this.make(n,e,this.pos)}number(e){let t=this.input,n=e;if(t[n]===`0`&&(t[n+1]===`x`||t[n+1]===`X`))for(n+=2;n<t.length&&/[0-9A-Fa-f]/.test(t[n]);)n++;else if(t[n]===`0`&&(t[n+1]===`b`||t[n+1]===`B`)&&(t[n+2]===`0`||t[n+2]===`1`))for(n+=2;n<t.length&&(t[n]===`0`||t[n]===`1`);)n++;else{for(;n<t.length&&f(t[n]);)n++;if(t[n]===`.`)for(n++;n<t.length&&f(t[n]);)n++;if((t[n]===`e`||t[n]===`E`)&&(f(t[n+1]??``)||(t[n+1]===`+`||t[n+1]===`-`)&&f(t[n+2]??``)))for(n+=2;n<t.length&&f(t[n]);)n++}return this.pos=n,this.make(`number`,e,n)}},h=new Set([`BEGIN`,`CASE`,`IF`,`LOOP`,`WHILE`,`REPEAT`]);function g(e){return e.kind!==`space`&&e.kind!==`comment`}function ee(e,t){let n=[],r=[],i=[],a=0,o=!1,s=t=>{for(let n=t+1;n<e.length;n++)if(g(e[n]))return e[n]},c=e=>{r.length!==0&&(n.push({tokens:r,start:r[0].start,end:r[r.length-1].end,terminated:e}),r=[],i=[],a=0,o=!1)};for(let n=0;n<e.length;n++){let l=e[n];if(l.kind===`delimiter_command`){i.length>0?c(!1):r=[];continue}if(l.kind===`terminator`){if(a>0&&l.value===`;`){r.push({...l,kind:`punct`}),i.push(l);continue}r.push(l),c(!0);continue}if(r.push(l),g(l)){if(l.kind===`identifier`){let e=l.upper,r=i.length===0;if(o&&(o=!1,h.has(e))){i.push(l);continue}if(e===`END`)a>0&&a--,o=!0;else if(e===`BEGIN`){let e=s(n),o=i[i.length-1];r?(t.plsqlBlocks||e?.kind===`identifier`&&e.upper===`NOT`)&&a++:!(e=>e!==void 0&&(e.kind===`operator`||e.kind===`rparen`||e.kind===`punct`&&(e.value===`,`||e.value===`.`)||e.kind===`identifier`&&e.upper===`FROM`))(e)&&!(o&&(o.kind===`operator`||o.kind===`punct`&&(o.value===`,`||o.value===`.`)))&&a++}else if(e===`CASE`)a++;else if(a>0&&(e===`IF`||e===`LOOP`||e===`WHILE`||e===`REPEAT`)){let e=s(n);e?.kind!==`lparen`&&(e?.kind!==`identifier`||e.upper!==`EXISTS`&&e.upper!==`NOT`)&&a++}}i.push(l)}}return c(!1),n}var te=new Set([`SELECT`,`VALUES`,`TABLE`,`WITH`,`SHOW`,`EXPLAIN`,`DESCRIBE`,`DESC`,`HELP`,`CHECK`,`CHECKSUM`,`ANALYZE`,`OPTIMIZE`,`REPAIR`,`PRAGMA`]),ne=new Set([`SELECT`,`INSERT`,`UPDATE`,`DELETE`,`REPLACE`,`VALUES`,`TABLE`,`MERGE`]),re=new Set([`TABLE`,`DATABASE`,`SCHEMA`,`TABLESPACE`]),ie=new Set([`WHERE`,`SET`,`USING`,`ORDER`,`LIMIT`,`JOIN`,`INNER`,`LEFT`,`RIGHT`,`CROSS`,`NATURAL`,`STRAIGHT_JOIN`,`ON`,`PARTITION`,`AS`,`RETURNING`,`INDEXED`,`NOT`]);function _(e){if(e.kind!==`quoted_identifier`)return e.value;let t=e.value[0],n=t===`[`?`]`:t,r=e.value.slice(1,e.value.endsWith(n)?-1:void 0);return t!==`[`&&(r=r.replaceAll(n+n,n)),r}function v(e){return e.kind===`identifier`||e.kind===`quoted_identifier`}function y(e,t,n=ie){let r=[];for(;t<e.length;){let i=e[t];if(!v(i)||i.kind===`identifier`&&n.has(i.upper))break;let a=[_(i)];for(t++;t+1<e.length&&e[t].kind===`punct`&&e[t].value===`.`&&v(e[t+1]);)a.push(_(e[t+1])),t+=2;if(r.push(a.join(`.`)),e[t]?.kind===`punct`&&e[t].value===`,`){t++;continue}break}return{names:r,next:t}}function b(e,t,n=0){let r=0;for(let i=n;i<e.length;i++){let n=e[i];if(n.kind===`lparen`)r++;else if(n.kind===`rparen`)r=Math.max(0,r-1);else if(r===0&&n.kind===`identifier`&&n.upper===t)return i}return-1}function ae(e){let t=0;for(;t<e.length&&e[t].kind===`lparen`;)t++;if(t>=e.length||e[t].kind!==`identifier`)return{kind:``,index:t};if(e[t].upper!==`WITH`)return{kind:e[t].upper,index:t};let n=0,r=!1;for(let i=t+1;i<e.length;i++){let t=e[i];if(t.kind===`lparen`){n++,r=!1;continue}if(t.kind===`rparen`){n--,r=n===0;continue}if(n===0&&r&&t.kind===`identifier`&&ne.has(t.upper))return{kind:t.upper,index:i};r=!1}return{kind:`WITH`,index:t}}function oe(e,t){let n=b(e,`LIMIT`,t);if(n===-1)return null;let r=e[n+1];if(!r||r.kind!==`number`)return null;let i=e[n+2],a=e[n+3];return i?.kind===`punct`&&i.value===`,`&&a?.kind===`number`?{offset:Number(r.value),count:Number(a.value)}:i?.kind===`identifier`&&i.upper===`OFFSET`&&a?.kind===`number`?{offset:Number(a.value),count:Number(r.value)}:{offset:0,count:Number(r.value)}}function se(e,t,n){let r=t=>e[t]?.kind===`identifier`?e[t].upper:void 0;switch(t){case`DROP`:{let t=n+1;r(t)===`TEMPORARY`&&t++;let i=r(t);if(!i)return null;t++,r(t)===`IF`&&(t+=2);let{names:a}=y(e,t,new Set([`ON`,`RESTRICT`,`CASCADE`]));return{action:`DROP`,objectType:i,names:a,dataLoss:re.has(i)}}case`TRUNCATE`:{let t=n+1;r(t)===`TABLE`&&t++;let{names:i}=y(e,t);return{action:`TRUNCATE`,objectType:`TABLE`,names:i,dataLoss:!0}}case`DELETE`:{if(b(e,`WHERE`,n)!==-1)return null;let t=n+1;for(;r(t)===`LOW_PRIORITY`||r(t)===`QUICK`||r(t)===`IGNORE`;)t++;return{action:`DELETE_ALL`,names:r(t)===`FROM`?y(e,t+1).names:y(e,t,new Set([`FROM`])).names,dataLoss:!0}}case`UPDATE`:{if(b(e,`WHERE`,n)!==-1)return null;let t=n+1;for(;r(t)===`LOW_PRIORITY`||r(t)===`IGNORE`||r(t)===`OR`;)t+=r(t)===`OR`?2:1;let{names:i}=y(e,t);return{action:`UPDATE_ALL`,names:i,dataLoss:!0}}case`ALTER`:{if(r(n+1)!==`TABLE`)return null;let{names:t}=y(e,n+2,new Set([`ADD`,`DROP`,`MODIFY`,`CHANGE`,`RENAME`,`ALTER`])),i=[],a=0;for(let t=n+2;t<e.length;t++){let n=e[t];if(n.kind===`lparen`){a++;continue}if(n.kind===`rparen`){a--;continue}if(a!==0||n.kind!==`identifier`||n.upper!==`DROP`)continue;let r=e[t+1],o=r?.kind===`identifier`?r.upper:``;if(o===`COLUMN`){let n=e[t+2];n&&v(n)&&i.push(_(n))}else o===`PARTITION`?i.push(`PARTITION ${y(e,t+2).names.join(`, `)}`):r&&v(r)&&![`PRIMARY`,`FOREIGN`,`INDEX`,`KEY`,`CONSTRAINT`,`CHECK`,`DEFAULT`,`TABLESPACE`].includes(o)&&i.push(_(r))}return i.length===0?null:{action:`ALTER_DROP`,objectType:`TABLE`,names:t.map(e=>`${e} (${i.join(`, `)})`),dataLoss:!0}}default:return null}}function ce(e,t){let n=e.tokens.filter(e=>g(e)&&e.kind!==`terminator`),r=e.terminated?e.tokens.slice(0,-1):e.tokens,i=r.length?r[r.length-1].end:e.start,a=t.slice(e.start,i).trim(),{kind:o,index:s}=ae(n),c=te.has(o)||b(n,`RETURNING`,s)!==-1,l=c?oe(n,s):null,u=se(n,o,s);return{sql:a,raw:t.slice(e.start,e.end),start:e.start,end:e.end,tokens:e.tokens,kind:o,isEmpty:n.length===0,returnsRows:c,limit:l,destructive:u}}function le(e,t){let n=e.tokens.filter(e=>g(e)&&e.kind!==`terminator`),r=n.findIndex(e=>e.kind!==`lparen`);return b(n,t.toUpperCase(),Math.max(0,r))!==-1}function x(e){return e.start+e.raw.indexOf(e.sql)}function ue(e){let t=e.tokens.filter(e=>g(e)&&e.kind!==`terminator`),n=0;for(;n<t.length&&t[n].kind===`lparen`;)n++;let r=t[n];if(!r||r.kind!==`identifier`||r.upper!==`SELECT`)return-1;let i=r,a=t[n+1];return a?.kind===`identifier`&&(a.upper===`DISTINCT`||a.upper===`ALL`)&&(i=a),i.end-x(e)}var S=class{syntax;constructor(e){this.syntax=`syntax`in e?e.syntax:e}tokenize(e,t=`;`){return new m(e,this.syntax,t).tokenize()}parse(e,t=`;`){return ee(this.tokenize(e,t),this.syntax).map(t=>ce(t,e))}statements(e,t=`;`){return this.parse(e,t).filter(e=>!e.isEmpty)}},de=new Set([`ORDER`,`LIMIT`,`RETURNING`,`OUTPUT`,`OPTION`]);function C(e,t,n,r){return n?e.slice(n.start-t,(r?r.start:2**53-1)-t).trim():``}function w(e,t,n){let r=t;for(;r<n&&e[r].kind===`identifier`&&(e[r].upper===`ONLY`||e[r].upper===`LOW_PRIORITY`||e[r].upper===`IGNORE`||e[r].upper===`QUICK`);)r++;if(r>=n||!v(e[r]))return null;let i=_(e[r]),a=e[r].kind===`quoted_identifier`;for(r++;r+1<n&&e[r].kind===`punct`&&e[r].value===`.`&&v(e[r+1]);)i=_(e[r+1]),a=e[r+1].kind===`quoted_identifier`,r+=2;return r<n&&e[r].kind===`identifier`&&e[r].upper===`AS`&&r++,r<n&&v(e[r])&&!(e[r].kind===`identifier`&&[`SET`,`WHERE`,`JOIN`,`INNER`,`LEFT`,`RIGHT`,`CROSS`,`USING`,`FROM`,`ON`,`NATURAL`,`STRAIGHT_JOIN`,`WITH`,`OUTPUT`].includes(e[r].upper))?(e[r].kind,e[r].value):a?`"${i.replaceAll(`"`,`""`)}"`:i}function fe(e,t=`"`){let n=e.tokens.filter(e=>g(e)&&e.kind!==`terminator`),r=x(e),i=e.sql,a=e=>(e.startsWith(t)||e.startsWith(`"`)||e.startsWith("`")||e.startsWith(`[`),e),o=n[0];if(!o||o.kind!==`identifier`||o.upper!==`UPDATE`&&o.upper!==`DELETE`)return null;let s=b(n,`WHERE`),c=-1;for(let e of de){let t=b(n,e,s===-1?1:s);t!==-1&&(c===-1||t<c)&&(c=t)}let l=e=>e===-1?n.length:e,u=s===-1?``:` `+C(i,r,n[s],n[l(c)]),d=``;if(c!==-1&&(n[c].upper===`ORDER`||n[c].upper===`LIMIT`)){let e=[`RETURNING`,`OUTPUT`,`OPTION`].map(e=>b(n,e,c)).filter(e=>e!==-1);d=` `+C(i,r,n[c],e.length?n[Math.min(...e)]:void 0)}let f,p,m;if(o.upper===`UPDATE`){let e=b(n,`SET`);if(e===-1)return null;let t=b(n,`FROM`,e),a=e,o=C(i,r,n[1],n[a]);if(!o||n[1].kind===`lparen`)return null;if(p=w(n,1,a),m=o,t!==-1&&(s===-1||t<s)){let e=C(i,r,n[t+1],n[l(s===-1?c:s)]);f=p!==null&&RegExp(`(^|[\\s,])${p.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}(\\s|$|,)`,`i`).test(e)?e:`${o}, ${e}`}else f=o}else{let e=b(n,`FROM`);if(e===-1)return null;let t=b(n,`USING`,e),a=l(t===-1?s===-1?c:s:t),o=C(i,r,n[e+1],n[a]);if(!o||n[e+1]?.kind===`lparen`)return null;let u=C(i,r,n[1],n[e]),d=u?u.split(`,`)[0].trim().replace(/^(LOW_PRIORITY|QUICK|IGNORE)\s+/i,``):``;p=d||w(n,e+1,a),m=d||o;let h=t===-1?``:C(i,r,n[t+1],n[l(s===-1?c:s)]);f=h?`${o}, ${h}`:o}return p?{select:`SELECT ${a(p)}.* FROM ${f}${u}${d}`,count:d?`SELECT COUNT(*) AS affected FROM (SELECT 1 AS one FROM ${f}${u}${d}) planche_preview`:`SELECT COUNT(*) AS affected FROM ${f}${u}`,table:m,limited:/\bLIMIT\b/i.test(d)}:null}var pe={mysql:`mysql`,maria:`mariadb`,postgres:`postgresql`,neon:`postgresql`,supabase:`postgresql`,mssql:`transactsql`,sqlite:`transactsql`,d1:`transactsql`,do:`transactsql`,oracle:null},me={mysql:()=>t(()=>import(`./R93pYE1w.js`).then(t=>e(t.default,1)),__vite__mapDeps([0,1,2])),mariadb:()=>t(()=>import(`./DOeLCbYG.js`).then(t=>e(t.default,1)),__vite__mapDeps([3,1,2])),postgresql:()=>t(()=>import(`./5E2RYjEs.js`).then(t=>e(t.default,1)),__vite__mapDeps([4,1,2])),transactsql:()=>t(()=>import(`./eRZ39OKr.js`).then(t=>e(t.default,1)),__vite__mapDeps([5,1,2]))},T=new Map;function he(e){return pe[e]??null}async function ge(e){let t=T.get(e);if(t)return t;let n=new(await(me[e]())).Parser;return T.set(e,n),n}function E(e){return typeof e==`object`&&!!e}function D(e){return E(e)&&e.type===`select`}function _e(e){return E(e)&&D(e.ast)?e.ast:null}function ve(e){let t=e.name;return typeof t==`string`?t:t?.value??`cte`}function ye(e){let t=e.stmt;return E(t)?D(t.ast)?t.ast:D(t)?t:null:null}function be(e){if(!e)return null;let t=e.toUpperCase();return t===`JOIN`?`INNER JOIN`:t}function xe(e){let t=e.db??e.schema??null;return t?`${t}.${e.table}`:String(e.table)}function O(e){if(!E(e))return!1;if(e.type===`star`)return!0;let t=e.column;return!!(t===`*`||E(t)&&E(t.expr)&&t.expr.value===`*`)}function k(e){return O(e)?!E(e)||e.table===null||e.table===void 0:!1}function Se(e){let t=e.columns;return t===`*`?{count:null,expandsSources:!0}:Array.isArray(t)?t.filter(e=>O(e)||O(e.expr)).length===0?{count:t.length,expandsSources:!1}:{count:null,expandsSources:t.length===1&&(k(t[0])||k(t[0].expr))}:{count:null,expandsSources:!1}}function A(e,t){if(Array.isArray(e)){for(let n of e)A(n,t);return}if(!E(e))return;let n=_e(e);if(n){t.push(n);return}for(let[n,r]of Object.entries(e))n!==`loc`&&A(r,t)}var Ce=class{nodes=[];edges=[];groups=[];warnings=[];seq=0;nextId(e){return this.seq+=1,`${e}${this.seq}`}addGroup(e,t,n){let r={id:this.nextId(`g`),kind:e,label:t,parentId:n};return this.groups.push(r),r.id}addNode(e){let t={id:this.nextId(`n`),...e};return this.nodes.push(t),t}addEdge(e,t,n,r){this.edges.push({id:this.nextId(`e`),from:e,to:t,kind:n,label:r})}visitQuery(e,t,n,r,i,a){let o=[];for(let t=e;t;t=t._next)o.push(t);if(o.length===1)return this.visitSelect(e,t,n,r,i,a);let s=this.addGroup(`query`,r,t),c=(e.set_op??`union`).toUpperCase(),l=new Map(n);this.declareCtes(e,s,l);let u=o.map((e,t)=>this.visitSelect(e,s,new Map(l),`${c} (${t+1})`,`result`,`result`,t===0)),d=this.addNode({kind:i===`result`?`setop`:i,label:i===`result`?c:a,alias:null,qualifier:null,columnCount:u[0]?.columnCount??null,expandsSources:!1,groupId:s,range:null});for(let e of u)this.addEdge(e.id,d.id,`setop`,c);return d}declareCtes(e,t,n){if(Array.isArray(e.with))for(let r of e.with){let e=ve(r),i=ye(r);if(!i){this.warnings.push(`CTE ${e}: body not understood`);continue}let a=this.visitQuery(i,t,new Map(n),`WITH ${e}`,`cte`,e);n.set(e.toLowerCase(),a)}}visitSelect(e,t,n,r,i,a,o=!1){let s=this.addGroup(`query`,r,t),c=new Map(n);o||this.declareCtes(e,s,c);let l=[];if(Array.isArray(e.from)&&e.from.length>0){let t=this.addGroup(`from`,`FROM`,s);e.from.forEach((e,n)=>{let r=be(e.join),i=n===0&&!r?`from`:`join`,a=e.expr?.ast;if(a){let n=e.as??`subquery`,o=this.visitQuery(a,t,new Map(c),`FROM ${n}`,`derived`,n);l.push({node:o,kind:i,label:r});return}if(!e.table){this.warnings.push(`FROM entry not understood (function call or table expression)`);return}let o=c.get(e.table.toLowerCase()),s=this.addNode({kind:o?`cte-ref`:`table`,label:xe(e),alias:e.as??null,qualifier:e.db??e.schema??null,columnCount:o?o.columnCount:null,expandsSources:!1,groupId:t,range:null});o&&this.addEdge(o.id,s.id,`cte`,null),l.push({node:s,kind:i,label:r})})}let u=[];for(let[t,n]of[[`SELECT`,e.columns],[`WHERE`,e.where],[`GROUP BY`,e.groupby],[`HAVING`,e.having],[`ORDER BY`,e.orderby]]){let e=[];A(n,e),e.forEach((n,r)=>{let i=e.length>1?`${t} (${r+1})`:t;u.push(this.visitQuery(n,s,new Map(c),i,`scalar`,`subquery`))})}let{count:d,expandsSources:f}=Se(e),p=this.addNode({kind:i,label:a,alias:null,qualifier:null,columnCount:d,expandsSources:f,groupId:s,range:null});for(let e of l)this.addEdge(e.node.id,p.id,e.kind,e.label);for(let e of u)this.addEdge(e.id,p.id,`scalar`,null);return p}};function we(e){let t=Array.isArray(e)?e[0]:e;if(!D(t))return null;let n=new Ce;return n.visitQuery(t,null,new Map,`query`,`result`,`result`),Array.isArray(e)&&e.length>1&&n.warnings.push(`only the first of ${e.length} statements is drawn`),{nodes:n.nodes,edges:n.edges,groups:n.groups,warnings:n.warnings}}var j=new Set([`WHERE`,`GROUP`,`HAVING`,`ORDER`,`CONNECT`,`START`,`MODEL`,`FETCH`,`OFFSET`,`FOR`,`UNION`,`INTERSECT`,`MINUS`,`EXCEPT`,`WITH`]),Te=new Set([`UNION`,`INTERSECT`,`MINUS`,`EXCEPT`]),M=new Set([...j,`ON`,`USING`,`JOIN`,`INNER`,`LEFT`,`RIGHT`,`FULL`,`CROSS`,`NATURAL`,`OUTER`,`AND`,`OR`,`NOT`,`AS`,`PARTITION`,`PIVOT`,`UNPIVOT`,`SAMPLE`]),N=new Set([`INNER`,`LEFT`,`RIGHT`,`FULL`,`CROSS`,`NATURAL`,`OUTER`]);function P(e){return e?.kind===`identifier`?e.upper??e.value.toUpperCase():``}function F(e){return e!==void 0&&(e.kind===`identifier`||e.kind===`quoted_identifier`)}function I(e,t){let n=0;for(let r=t;r<e.length;r++)if(e[r].kind===`lparen`)n++;else if(e[r].kind===`rparen`&&--n===0)return r+1;return e.length}function L(e,t,n){let r=[];for(let i=t;i<n;i++){if(e[i].kind!==`lparen`)continue;let t=P(e[i+1]),a=Math.min(I(e,i),n);(t===`SELECT`||t===`WITH`)&&(r.push(B(e,i+1,a-1)),i=a-1)}return r}function R(e,t,n,r){let i=[],a=0;for(let o=t;o<n;o++)e[o].kind===`lparen`?a++:e[o].kind===`rparen`?a--:a===0&&r(e[o])&&i.push(o);return i}function z(e,t,n,r){let i=0;for(let a=t;a<n;a++)if(e[a].kind===`lparen`)i++;else if(e[a].kind===`rparen`)i--;else if(i===0&&r(e[a]))return a;return n}function Ee(e,t){let n=[_(e[t])],r=t+1;for(;e[r]?.kind===`punct`&&e[r].value===`.`&&F(e[r+1]);)n.push(_(e[r+1])),r+=2;return{parts:n,next:r}}function De(e,t,n,r){let i=t;if(e[i]?.kind===`lparen`&&(P(e[i+1])===`SELECT`||P(e[i+1])===`WITH`)){let t=I(e,i),n=B(e,i+1,t-1),a=null,o=t;return P(e[o])===`AS`&&o++,F(e[o])&&!M.has(P(e[o]))&&(a=_(e[o])),{db:null,table:null,as:a,expr:{ast:n},...r?{join:r}:{}}}if(!F(e[i]))return null;let{parts:a,next:o}=Ee(e,i);if(i=o,e[i]?.kind===`lparen`)return null;let s=null;P(e[i])===`AS`&&i++,i<n&&F(e[i])&&!M.has(P(e[i]))&&(s=_(e[i]));let c=a[a.length-1];return{db:a.length>1?a.slice(0,-1).join(`.`):null,table:c,as:s,...r?{join:r}:{}}}function Oe(e,t,n){let r=[],i=e=>e.kind===`punct`&&e.value===`,`,a=e=>P(e)===`JOIN`||N.has(P(e)),o=R(e,t,n,e=>i(e)||a(e)),s=[{at:t,join:null}];for(let t=0;t<o.length;t++){let r=o[t];if(i(e[r])){s.push({at:r+1,join:null});continue}let a=[],c=r;for(;c<n&&(N.has(P(e[c]))||P(e[c])===`JOIN`);){if(a.push(P(e[c])),P(e[c])===`JOIN`){c++;break}c++}for(;t+1<o.length&&o[t+1]<c;)t++;s.push({at:c,join:a.join(` `)||`JOIN`})}for(let t=0;t<s.length;t++){let i=s[t],a=t+1<s.length?s[t+1].at:n,o=De(e,i.at,a,i.join);o&&r.push(o)}return r}function B(e,t,n){let r={type:`select`,with:null,columns:`*`,from:[],where:[]},i=t;if(P(e[i])===`WITH`)for(i++,P(e[i])===`RECURSIVE`&&i++,r.with=[];i<n&&F(e[i]);){let t=_(e[i]);if(i++,e[i]?.kind===`lparen`&&P(e[i+1])!==`SELECT`&&(i=I(e,i)),P(e[i])!==`AS`||(i++,(P(e[i])===`MATERIALIZED`||P(e[i])===`NOT`&&P(e[i+1])===`MATERIALIZED`)&&(i+=P(e[i])===`NOT`?2:1),e[i]?.kind!==`lparen`))break;let n=I(e,i);if(r.with.push({name:{value:t},stmt:{ast:B(e,i+1,n-1)}}),i=n,e[i]?.kind===`punct`&&e[i].value===`,`){i++;continue}break}if(P(e[i])!==`SELECT`)return r;i++,[`DISTINCT`,`ALL`,`UNIQUE`].includes(P(e[i]))&&i++;let a=z(e,i,n,e=>P(e)===`FROM`),o=R(e,i,a,e=>e.kind===`punct`&&e.value===`,`),s=[],c=i;for(let e of o)s.push([c,e]),c=e+1;s.push([c,a]);let l=e=>e.kind===`operator`&&e.value===`*`,u=s.filter(([t,n])=>z(e,t,n,l)<n);if(r.columns=s.length===1&&u.length===1&&s[0][1]-s[0][0]===1?`*`:u.length>0?[{expr:{type:`star`}},...s.slice(1).map(()=>({}))]:s.map(([t,n])=>{let r=L(e,t,n);return r.length>0?{expr:{ast:r[0]}}:{}}),a>=n)return r;let d=z(e,a+1,n,e=>j.has(P(e)));r.from=Oe(e,a+1,d);let f=z(e,d,n,e=>Te.has(P(e)));if(r.where=L(e,d,f).map(e=>({ast:e})),f<n){let t=P(e[f]),i=P(e[f+1])===`ALL`;r.set_op=`${t.toLowerCase()}${i?` all`:``}`,r._next=B(e,f+(i?2:1),n)}return r}function ke(e,t){let n=new S(t).tokenize(e).filter(e=>e.kind!==`space`&&e.kind!==`comment`&&e.kind!==`terminator`);if(n.length===0)return null;let r=P(n[0]);return r!==`SELECT`&&r!==`WITH`?null:B(n,0,n.length)}var Ae=new Set(`ON.USING.WHERE.GROUP.ORDER.HAVING.LIMIT.OFFSET.FETCH.WINDOW.JOIN.INNER.LEFT.RIGHT.FULL.CROSS.NATURAL.OUTER.STRAIGHT_JOIN.APPLY.UNION.INTERSECT.EXCEPT.MINUS.SELECT.FROM.WITH.AND.OR.NOT.SET.VALUES.WHEN.THEN.ELSE.END.FOR.INTO.START.CONNECT.PIVOT.AS.BY.DISTINCT.ALL.ANY.CASE.IS.NULL.IN.EXISTS.BETWEEN.LIKE.ASC.DESC.RECURSIVE.TOP.PERCENT.TIES.ROW.ROWS.ONLY.NEXT.FIRST.PARTITION.OVER.LATERAL.RETURNING.OUTPUT.PRIOR.MATERIALIZED.FILTER.INSERT.UPDATE.DELETE.CREATE.TABLE.VIEW.EXPLAIN.PRAGMA.MERGE`.split(`.`));function V(e){return e?.kind===`identifier`&&Ae.has(e.upper??e.value.toUpperCase())}function H(e){return e!==void 0&&(e.kind===`identifier`||e.kind===`quoted_identifier`)}function je(e){let t=e.filter(e=>e.kind!==`space`&&e.kind!==`comment`),n=[];for(let e=0;e<t.length;e++){let r=t[e];if(!H(r)||V(r))continue;let i=[_(r)],a=r;for(;H(t[e+2])&&t[e+1]?.kind===`punct`&&t[e+1].value===`.`;)a=t[e+2],i.push(_(a)),e+=2;let o=null,s=t[e+1];s?.kind===`identifier`&&s.upper===`AS`?(s=t[e+2],H(s)&&!V(s)&&(o=_(s),e+=2)):H(s)&&!V(s)&&(o=_(s),e+=1),n.push({name:i.join(`.`),alias:o,start:r.start,end:a.end,used:!1})}return n}function Me(e){switch(e.kind){case`table`:case`cte-ref`:case`cte`:case`derived`:return e.label;default:return null}}function Ne(e,t,n){let r=je(new S(n).tokenize(t)),i=e.nodes.map(e=>{let t=Me(e);if(!t)return e;let n=t.toLowerCase(),i=e.alias?.toLowerCase()??null,a=r.find(e=>!e.used&&e.name.toLowerCase()===n&&(!i||e.alias?.toLowerCase()===i))??r.find(e=>!e.used&&e.alias?.toLowerCase()===n);return a?(a.used=!0,{...e,range:[a.start,a.end]}):e});return{...e,nodes:i}}function U(e){return e.label.toLowerCase()}function W(e){let t=new Map;for(let n of e.nodes){if(n.kind!==`table`)continue;let e=U(n);if(t.has(e))continue;let r=n.label.split(`.`);t.set(e,{key:e,qualifier:r.length>1?r.slice(0,-1).join(`.`):null,table:r[r.length-1]})}return[...t.values()]}function Pe(e,t){let n=new Map,r=e.nodes.map(e=>{let r=e.kind===`table`&&e.columnCount===null&&t.has(U(e))?{...e,columnCount:t.get(U(e))??null}:{...e};return n.set(r.id,r),r}),i=new Set([`from`,`join`,`cte`,`setop`]);for(let t=0;t<r.length;t++){let t=!1;for(let a of r){if(a.columnCount!==null)continue;let r=e.edges.filter(e=>e.to===a.id&&i.has(e.kind)).map(e=>n.get(e.from)).filter(e=>e!==void 0),o=r.filter(e=>e.columnCount!==null);r.length!==0&&o.length===r.length&&(a.expandsSources?(a.columnCount=o.reduce((e,t)=>e+(t.columnCount??0),0),t=!0):r.length===1&&(a.columnCount=o[0].columnCount,t=!0))}if(!t)break}return{...e,nodes:r}}async function G(e,t){let n=he(t.id),r;if(n)try{r=(await ge(n)).astify(e,{database:n})}catch(e){return{ok:!1,reason:`parse-error`,message:e instanceof Error?e.message.split(`
8
- `)[0]:String(e)}}else if(t.id===`oracle`)r=ke(e,t.syntax);else return{ok:!1,reason:`unsupported-engine`,message:`No SQL grammar for ${t.label}`};let i=we(r);return i?{ok:!0,graph:Ne(i,e,t.syntax)}:{ok:!1,reason:`not-a-query`,message:`Only SELECT statements have a structure graph`}}var Fe=8,Ie=3,Le=[{kind:`column`,re:/unknown column '([^']+)'/i},{kind:`table`,re:/(?:unknown table|table) '([^']+)'(?: doesn't exist)?/i},{kind:`column`,re:/column "([^"]+)" does not exist/i},{kind:`table`,re:/relation "([^"]+)" does not exist/i},{kind:`column`,re:/no such column:\s*(\S+)/i},{kind:`table`,re:/no such table:\s*(\S+)/i},{kind:`column`,re:/invalid column name '([^']+)'/i},{kind:`table`,re:/invalid object name '([^']+)'/i},{kind:`column`,re:/ORA-00904:\s*"?([^":]+)"?:\s*invalid identifier/i}];function K(e){for(let{kind:t,re:n}of Le){let r=n.exec(e);if(!r)continue;let i=r[1].trim().replace(/[`"'[\]]/g,``),a=i.split(`.`).pop()??i;if(a)return{kind:t,name:a}}return null}function q(e){return e.toLowerCase().replace(/[_\s-]/g,``)}function Re(e,t,n){if(Math.abs(e.length-t.length)>n)return n+1;let r=Array.from({length:t.length+1},(e,t)=>t);for(let i=1;i<=e.length;i++){let a=[i],o=i;for(let n=1;n<=t.length;n++){let s=e[i-1]===t[n-1]?0:1,c=Math.min(r[n]+1,a[n-1]+1,r[n-1]+s);a.push(c),c<o&&(o=c)}if(o>n)return n+1;r=a}return r[t.length]}function ze(e){return e.length<=4?1:e.length<=8?2:3}function J(e,t,n=Ie){let r=q(e);if(!r)return[];let i=ze(r),a=[];for(let n of t){let t=q(n);if(!t||t===r){t===r&&n!==e&&a.push({name:n,d:0,prefix:!0});continue}let o=Re(r,t,i);o>i||a.push({name:n,d:o,prefix:t.startsWith(r)||r.startsWith(t)})}a.sort((e,t)=>e.d-t.d||Number(t.prefix)-Number(e.prefix)||e.name.localeCompare(t.name));let o=a.filter(e=>e.d===0);return(o.length>0?o:a).slice(0,n).map(e=>e.name)}function Be(e){return e.filter(e=>e.kind!==`space`&&e.kind!==`comment`)}function Y(e,t){let n=[],r;try{r=Be(new S(t).tokenize(e))}catch{return n}let i=t.quoteIdentifier(`x`).startsWith("`");for(let e=0;e<r.length;e++){let a=r[e];if(a.kind===`quoted_identifier`&&a.value.startsWith("`")&&!i){let e=a.value.slice(1,-1);n.push({code:`syntaxSwap`,params:{engine:t.label,found:a.value,expected:t.quoteIdentifier(e)}});break}}for(let e=1;e<r.length;e++){let i=r[e];if(i.kind===`quoted_identifier`&&i.value.startsWith(`"`)&&t.syntax.doubleQuoteIsIdentifier){let a=r[e-1];if(a.kind===`operator`&&/^(=|<>|!=|<|>|<=|>=)$/.test(a.value)){n.push({code:`doubleQuotedLiteral`,params:{engine:t.label,value:i.value.slice(1,-1)}});break}}}let a=t.syntax.limitStyle;for(let e=0;e<r.length;e++){let i=r[e];if(i.kind!==`identifier`)continue;let o=r[e+1],s=o?.kind===`number`?o.value:`n`;if(i.upper===`LIMIT`&&a!==`limit`&&o?.kind===`number`){n.push({code:`syntaxSwap`,params:{engine:t.label,found:`LIMIT ${s}`,expected:a===`top`?`SELECT TOP ${s}`:`FETCH FIRST ${s} ROWS ONLY`}});break}if(i.upper===`TOP`&&a!==`top`&&o?.kind===`number`&&r[e-1]?.upper===`SELECT`){n.push({code:`syntaxSwap`,params:{engine:t.label,found:`TOP ${s}`,expected:a===`limit`?`LIMIT ${s}`:`FETCH FIRST ${s} ROWS ONLY`}});break}}return n}function Ve(e){let{message:t,sql:n,engine:r,columns:i,tables:a}=e,o=[],s=K(t);if(s?.kind===`column`){let e=i.size>1,t=[],n=new Map;for(let[e,r]of i)for(let i of r)t.push(i),n.has(i)||n.set(i,e);let r=J(s.name,[...new Set(t)]);r.length>0&&o.push({code:`unknownColumn`,params:{name:s.name,suggestions:r.map(t=>e?`${n.get(t)}.${t}`:t).join(`, `)}})}if(s?.kind===`table`){let e=J(s.name,a);e.length>0&&o.push({code:`unknownTable`,params:{name:s.name,suggestions:e.join(`, `)}})}return[...o,...Y(n,r)]}var X=new Map,Z=new Map;function Q(e){let t=i.getState(),n=t.trees[e];return n?s(n,t.selectedNodeId[e])??c(n)[0]??null:null}function He(e,t){let r=o(e),i=n.getState().activeConnections.find(t=>t.id===e),a=r.capabilities.schemas?null:i?.database;return t||a||Q(e)}async function $(e,t){let i=r.getState().tabs[e]?.find(e=>e.id===t);if(!i?.error||!i.errorSql)return null;let s=o(e),c={engine:s,sql:i.errorSql,message:i.error,tables:new Map},l=n.getState().activeConnections.find(t=>t.id===e),u=s.capabilities.schemas?null:l?.database,d=i.database||u||Q(e);if(!l?.serverConnectionId||!d)return c;let f=a(l.serverConnectionId),p=await G(c.sql,s).catch(()=>null),m=p?.ok?W(p.graph).slice(0,Fe):[];return await Promise.all(m.map(async({qualifier:e,table:t})=>{let n=e??d,r=`${l.serverConnectionId}|${n}|${t}`,i=X.get(r);if(i){c.tables.set(t,i);return}try{let e=await s.introspect.listColumns(f,n,t);e.length>0&&(X.set(r,e),c.tables.set(t,e))}catch{}})),c}async function Ue(e,t){let i=r.getState().tabs[e]?.find(e=>e.id===t);if(!i?.error)return[];let s=i.errorSql??``,c=o(e),l=K(i.error);if(!s)return[];if(!l)return Y(s,c);let u=n.getState().activeConnections.find(t=>t.id===e),d=c.capabilities.schemas?null:u?.database,f=i.database||d||Q(e),p=new Map,m=[];if(u?.serverConnectionId&&f){let n=a(u.serverConnectionId);if(l.kind===`column`){let n=await $(e,t);for(let[e,t]of n?.tables??[])p.set(e,t.map(e=>e.name))}if(l.kind===`table`){let e=`${u.serverConnectionId}|${f}`,t=Z.get(e);if(t)m=t;else try{m=(await c.introspect.listTables(n,f)).map(e=>e.name);let t=await c.introspect.listViews(n,f).catch(()=>[]);m=[...m,...t],Z.set(e,m)}catch{}}}return Ve({message:i.error,sql:s,engine:c,columns:p,tables:m})}function We(e,t){let r=n.getState().activeConnections.find(t=>t.id===e)?.serverConnectionId;if(!r)return;let i=t?`${r}|${t}|`:`${r}|`;for(let e of[...X.keys()])e.startsWith(i)&&X.delete(e);if(t){Z.delete(`${r}|${t}`);return}for(let e of[...Z.keys()])e.startsWith(`${r}|`)&&Z.delete(e)}export{G as a,S as c,le as d,x as f,$ as i,fe as l,He as n,Pe as o,ue as p,Ue as r,W as s,We as t,_ as u};
7
+ `;)n++;return this.pos=n,this.make(`comment`,e,n)}quoted(e,t,n,r){let i=this.input,a=e+1;for(;a<i.length;){let e=i[a];if(r&&e===`\\`){a+=2;continue}if(e===t){if(i[a+1]===t){a+=2;continue}a++;break}a++}return this.pos=Math.min(a,i.length),this.make(n,e,this.pos)}number(e){let t=this.input,n=e;if(t[n]===`0`&&(t[n+1]===`x`||t[n+1]===`X`))for(n+=2;n<t.length&&/[0-9A-Fa-f]/.test(t[n]);)n++;else if(t[n]===`0`&&(t[n+1]===`b`||t[n+1]===`B`)&&(t[n+2]===`0`||t[n+2]===`1`))for(n+=2;n<t.length&&(t[n]===`0`||t[n]===`1`);)n++;else{for(;n<t.length&&f(t[n]);)n++;if(t[n]===`.`)for(n++;n<t.length&&f(t[n]);)n++;if((t[n]===`e`||t[n]===`E`)&&(f(t[n+1]??``)||(t[n+1]===`+`||t[n+1]===`-`)&&f(t[n+2]??``)))for(n+=2;n<t.length&&f(t[n]);)n++}return this.pos=n,this.make(`number`,e,n)}},h=new Set([`BEGIN`,`CASE`,`IF`,`LOOP`,`WHILE`,`REPEAT`]);function g(e){return e.kind!==`space`&&e.kind!==`comment`}function ee(e,t){let n=[],r=[],i=[],a=0,o=!1,s=t=>{for(let n=t+1;n<e.length;n++)if(g(e[n]))return e[n]},c=e=>{r.length!==0&&(n.push({tokens:r,start:r[0].start,end:r[r.length-1].end,terminated:e}),r=[],i=[],a=0,o=!1)};for(let n=0;n<e.length;n++){let l=e[n];if(l.kind===`delimiter_command`){i.length>0?c(!1):r=[];continue}if(l.kind===`terminator`){if(a>0&&l.value===`;`){r.push({...l,kind:`punct`}),i.push(l);continue}r.push(l),c(!0);continue}if(r.push(l),g(l)){if(l.kind===`identifier`){let e=l.upper,r=i.length===0;if(o&&(o=!1,h.has(e))){i.push(l);continue}if(e===`END`)a>0&&a--,o=!0;else if(e===`BEGIN`){let e=s(n),o=i[i.length-1];r?(t.plsqlBlocks||e?.kind===`identifier`&&e.upper===`NOT`)&&a++:!(e=>e!==void 0&&(e.kind===`operator`||e.kind===`rparen`||e.kind===`punct`&&(e.value===`,`||e.value===`.`)||e.kind===`identifier`&&e.upper===`FROM`))(e)&&!(o&&(o.kind===`operator`||o.kind===`punct`&&(o.value===`,`||o.value===`.`)))&&a++}else if(e===`CASE`)a++;else if(a>0&&(e===`IF`||e===`LOOP`||e===`WHILE`||e===`REPEAT`)){let e=s(n);e?.kind!==`lparen`&&(e?.kind!==`identifier`||e.upper!==`EXISTS`&&e.upper!==`NOT`)&&a++}}i.push(l)}}return c(!1),n}var te=new Set([`SELECT`,`VALUES`,`TABLE`,`WITH`,`SHOW`,`EXPLAIN`,`DESCRIBE`,`DESC`,`HELP`,`CHECK`,`CHECKSUM`,`ANALYZE`,`OPTIMIZE`,`REPAIR`,`PRAGMA`]),ne=new Set([`SELECT`,`INSERT`,`UPDATE`,`DELETE`,`REPLACE`,`VALUES`,`TABLE`,`MERGE`]),re=new Set([`TABLE`,`DATABASE`,`SCHEMA`,`TABLESPACE`]),ie=new Set([`WHERE`,`SET`,`USING`,`ORDER`,`LIMIT`,`JOIN`,`INNER`,`LEFT`,`RIGHT`,`CROSS`,`NATURAL`,`STRAIGHT_JOIN`,`ON`,`PARTITION`,`AS`,`RETURNING`,`INDEXED`,`NOT`]);function _(e){if(e.kind!==`quoted_identifier`)return e.value;let t=e.value[0],n=t===`[`?`]`:t,r=e.value.slice(1,e.value.endsWith(n)?-1:void 0);return t!==`[`&&(r=r.replaceAll(n+n,n)),r}function v(e){return e.kind===`identifier`||e.kind===`quoted_identifier`}function y(e,t,n=ie){let r=[];for(;t<e.length;){let i=e[t];if(!v(i)||i.kind===`identifier`&&n.has(i.upper))break;let a=[_(i)];for(t++;t+1<e.length&&e[t].kind===`punct`&&e[t].value===`.`&&v(e[t+1]);)a.push(_(e[t+1])),t+=2;if(r.push(a.join(`.`)),e[t]?.kind===`punct`&&e[t].value===`,`){t++;continue}break}return{names:r,next:t}}function b(e,t,n=0){let r=0;for(let i=n;i<e.length;i++){let n=e[i];if(n.kind===`lparen`)r++;else if(n.kind===`rparen`)r=Math.max(0,r-1);else if(r===0&&n.kind===`identifier`&&n.upper===t)return i}return-1}function ae(e){let t=0;for(;t<e.length&&e[t].kind===`lparen`;)t++;if(t>=e.length||e[t].kind!==`identifier`)return{kind:``,index:t};if(e[t].upper!==`WITH`)return{kind:e[t].upper,index:t};let n=0,r=!1;for(let i=t+1;i<e.length;i++){let t=e[i];if(t.kind===`lparen`){n++,r=!1;continue}if(t.kind===`rparen`){n--,r=n===0;continue}if(n===0&&r&&t.kind===`identifier`&&ne.has(t.upper))return{kind:t.upper,index:i};r=!1}return{kind:`WITH`,index:t}}function oe(e,t){let n=b(e,`LIMIT`,t);if(n===-1)return null;let r=e[n+1];if(!r||r.kind!==`number`)return null;let i=e[n+2],a=e[n+3];return i?.kind===`punct`&&i.value===`,`&&a?.kind===`number`?{offset:Number(r.value),count:Number(a.value)}:i?.kind===`identifier`&&i.upper===`OFFSET`&&a?.kind===`number`?{offset:Number(a.value),count:Number(r.value)}:{offset:0,count:Number(r.value)}}function se(e,t,n){let r=t=>e[t]?.kind===`identifier`?e[t].upper:void 0;switch(t){case`DROP`:{let t=n+1;r(t)===`TEMPORARY`&&t++;let i=r(t);if(!i)return null;t++,r(t)===`IF`&&(t+=2);let{names:a}=y(e,t,new Set([`ON`,`RESTRICT`,`CASCADE`]));return{action:`DROP`,objectType:i,names:a,dataLoss:re.has(i)}}case`TRUNCATE`:{let t=n+1;r(t)===`TABLE`&&t++;let{names:i}=y(e,t);return{action:`TRUNCATE`,objectType:`TABLE`,names:i,dataLoss:!0}}case`DELETE`:{if(b(e,`WHERE`,n)!==-1)return null;let t=n+1;for(;r(t)===`LOW_PRIORITY`||r(t)===`QUICK`||r(t)===`IGNORE`;)t++;return{action:`DELETE_ALL`,names:r(t)===`FROM`?y(e,t+1).names:y(e,t,new Set([`FROM`])).names,dataLoss:!0}}case`UPDATE`:{if(b(e,`WHERE`,n)!==-1)return null;let t=n+1;for(;r(t)===`LOW_PRIORITY`||r(t)===`IGNORE`||r(t)===`OR`;)t+=r(t)===`OR`?2:1;let{names:i}=y(e,t);return{action:`UPDATE_ALL`,names:i,dataLoss:!0}}case`ALTER`:{if(r(n+1)!==`TABLE`)return null;let{names:t}=y(e,n+2,new Set([`ADD`,`DROP`,`MODIFY`,`CHANGE`,`RENAME`,`ALTER`])),i=[],a=0;for(let t=n+2;t<e.length;t++){let n=e[t];if(n.kind===`lparen`){a++;continue}if(n.kind===`rparen`){a--;continue}if(a!==0||n.kind!==`identifier`||n.upper!==`DROP`)continue;let r=e[t+1],o=r?.kind===`identifier`?r.upper:``;if(o===`COLUMN`){let n=e[t+2];n&&v(n)&&i.push(_(n))}else o===`PARTITION`?i.push(`PARTITION ${y(e,t+2).names.join(`, `)}`):r&&v(r)&&![`PRIMARY`,`FOREIGN`,`INDEX`,`KEY`,`CONSTRAINT`,`CHECK`,`DEFAULT`,`TABLESPACE`].includes(o)&&i.push(_(r))}return i.length===0?null:{action:`ALTER_DROP`,objectType:`TABLE`,names:t.map(e=>`${e} (${i.join(`, `)})`),dataLoss:!0}}default:return null}}function ce(e,t){let n=e.tokens.filter(e=>g(e)&&e.kind!==`terminator`),r=e.terminated?e.tokens.slice(0,-1):e.tokens,i=r.length?r[r.length-1].end:e.start,a=t.slice(e.start,i).trim(),{kind:o,index:s}=ae(n),c=te.has(o)||b(n,`RETURNING`,s)!==-1,l=c?oe(n,s):null,u=se(n,o,s);return{sql:a,raw:t.slice(e.start,e.end),start:e.start,end:e.end,tokens:e.tokens,kind:o,isEmpty:n.length===0,returnsRows:c,limit:l,destructive:u}}function le(e,t){let n=e.tokens.filter(e=>g(e)&&e.kind!==`terminator`),r=n.findIndex(e=>e.kind!==`lparen`);return b(n,t.toUpperCase(),Math.max(0,r))!==-1}function x(e){return e.start+e.raw.indexOf(e.sql)}function ue(e){let t=e.tokens.filter(e=>g(e)&&e.kind!==`terminator`),n=0;for(;n<t.length&&t[n].kind===`lparen`;)n++;let r=t[n];if(!r||r.kind!==`identifier`||r.upper!==`SELECT`)return-1;let i=r,a=t[n+1];return a?.kind===`identifier`&&(a.upper===`DISTINCT`||a.upper===`ALL`)&&(i=a),i.end-x(e)}var S=class{syntax;constructor(e){this.syntax=`syntax`in e?e.syntax:e}tokenize(e,t=`;`){return new m(e,this.syntax,t).tokenize()}parse(e,t=`;`){return ee(this.tokenize(e,t),this.syntax).map(t=>ce(t,e))}statements(e,t=`;`){return this.parse(e,t).filter(e=>!e.isEmpty)}},de=new Set([`ORDER`,`LIMIT`,`RETURNING`,`OUTPUT`,`OPTION`]);function C(e,t,n,r){return n?e.slice(n.start-t,(r?r.start:2**53-1)-t).trim():``}function w(e,t,n){let r=t;for(;r<n&&e[r].kind===`identifier`&&(e[r].upper===`ONLY`||e[r].upper===`LOW_PRIORITY`||e[r].upper===`IGNORE`||e[r].upper===`QUICK`);)r++;if(r>=n||!v(e[r]))return null;let i=_(e[r]),a=e[r].kind===`quoted_identifier`;for(r++;r+1<n&&e[r].kind===`punct`&&e[r].value===`.`&&v(e[r+1]);)i=_(e[r+1]),a=e[r+1].kind===`quoted_identifier`,r+=2;return r<n&&e[r].kind===`identifier`&&e[r].upper===`AS`&&r++,r<n&&v(e[r])&&!(e[r].kind===`identifier`&&[`SET`,`WHERE`,`JOIN`,`INNER`,`LEFT`,`RIGHT`,`CROSS`,`USING`,`FROM`,`ON`,`NATURAL`,`STRAIGHT_JOIN`,`WITH`,`OUTPUT`].includes(e[r].upper))?(e[r].kind,e[r].value):a?`"${i.replaceAll(`"`,`""`)}"`:i}function fe(e,t=`"`){let n=e.tokens.filter(e=>g(e)&&e.kind!==`terminator`),r=x(e),i=e.sql,a=e=>(e.startsWith(t)||e.startsWith(`"`)||e.startsWith("`")||e.startsWith(`[`),e),o=n[0];if(!o||o.kind!==`identifier`||o.upper!==`UPDATE`&&o.upper!==`DELETE`)return null;let s=b(n,`WHERE`),c=-1;for(let e of de){let t=b(n,e,s===-1?1:s);t!==-1&&(c===-1||t<c)&&(c=t)}let l=e=>e===-1?n.length:e,u=s===-1?``:` `+C(i,r,n[s],n[l(c)]),d=``;if(c!==-1&&(n[c].upper===`ORDER`||n[c].upper===`LIMIT`)){let e=[`RETURNING`,`OUTPUT`,`OPTION`].map(e=>b(n,e,c)).filter(e=>e!==-1);d=` `+C(i,r,n[c],e.length?n[Math.min(...e)]:void 0)}let f,p,m;if(o.upper===`UPDATE`){let e=b(n,`SET`);if(e===-1)return null;let t=b(n,`FROM`,e),a=e,o=C(i,r,n[1],n[a]);if(!o||n[1].kind===`lparen`)return null;if(p=w(n,1,a),m=o,t!==-1&&(s===-1||t<s)){let e=C(i,r,n[t+1],n[l(s===-1?c:s)]);f=p!==null&&RegExp(`(^|[\\s,])${p.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}(\\s|$|,)`,`i`).test(e)?e:`${o}, ${e}`}else f=o}else{let e=b(n,`FROM`);if(e===-1)return null;let t=b(n,`USING`,e),a=l(t===-1?s===-1?c:s:t),o=C(i,r,n[e+1],n[a]);if(!o||n[e+1]?.kind===`lparen`)return null;let u=C(i,r,n[1],n[e]),d=u?u.split(`,`)[0].trim().replace(/^(LOW_PRIORITY|QUICK|IGNORE)\s+/i,``):``;p=d||w(n,e+1,a),m=d||o;let h=t===-1?``:C(i,r,n[t+1],n[l(s===-1?c:s)]);f=h?`${o}, ${h}`:o}return p?{select:`SELECT ${a(p)}.* FROM ${f}${u}${d}`,count:d?`SELECT COUNT(*) AS affected FROM (SELECT 1 AS one FROM ${f}${u}${d}) planche_preview`:`SELECT COUNT(*) AS affected FROM ${f}${u}`,table:m,limited:/\bLIMIT\b/i.test(d)}:null}var pe={mysql:`mysql`,maria:`mariadb`,postgres:`postgresql`,neon:`postgresql`,supabase:`postgresql`,mssql:`transactsql`,sqlite:`transactsql`,d1:`transactsql`,do:`transactsql`,oracle:null},me={mysql:()=>t(()=>import(`./R93pYE1w.js`).then(t=>e(t.default,1)),__vite__mapDeps([0,1,2])),mariadb:()=>t(()=>import(`./DOeLCbYG.js`).then(t=>e(t.default,1)),__vite__mapDeps([3,1,2])),postgresql:()=>t(()=>import(`./5E2RYjEs.js`).then(t=>e(t.default,1)),__vite__mapDeps([4,1,2])),transactsql:()=>t(()=>import(`./eRZ39OKr.js`).then(t=>e(t.default,1)),__vite__mapDeps([5,1,2]))},T=new Map,he={mysql:"`",mariadb:"`",postgresql:`"`,transactsql:`"`};function ge(e,t,n){if(!E.test(e))return e;let r=he[t],i=``,a=0;for(let t of new S(n).tokenize(e))t.kind!==`identifier`||!E.test(t.value)||(i+=e.slice(a,t.start)+r+t.value+r,a=t.end);return i+e.slice(a)}var E=/[\u0080-\uffff]/;function _e(e){return pe[e]??null}async function ve(e){let t=T.get(e);if(t)return t;let n=new(await(me[e]())).Parser;return T.set(e,n),n}function D(e){return typeof e==`object`&&!!e}function O(e){return D(e)&&e.type===`select`}function ye(e){return D(e)&&O(e.ast)?e.ast:null}function be(e){let t=e.name;return typeof t==`string`?t:t?.value??`cte`}function xe(e){let t=e.stmt;return D(t)?O(t.ast)?t.ast:O(t)?t:null:null}function Se(e){if(!e)return null;let t=e.toUpperCase();return t===`JOIN`?`INNER JOIN`:t}function Ce(e){let t=e.db??e.schema??null;return t?`${t}.${e.table}`:String(e.table)}function k(e){if(!D(e))return!1;if(e.type===`star`)return!0;let t=e.column;return!!(t===`*`||D(t)&&D(t.expr)&&t.expr.value===`*`)}function A(e){return k(e)?!D(e)||e.table===null||e.table===void 0:!1}function we(e){let t=e.columns;return t===`*`?{count:null,expandsSources:!0}:Array.isArray(t)?t.filter(e=>k(e)||k(e.expr)).length===0?{count:t.length,expandsSources:!1}:{count:null,expandsSources:t.length===1&&(A(t[0])||A(t[0].expr))}:{count:null,expandsSources:!1}}function j(e,t){if(Array.isArray(e)){for(let n of e)j(n,t);return}if(!D(e))return;let n=ye(e);if(n){t.push(n);return}for(let[n,r]of Object.entries(e))n!==`loc`&&j(r,t)}var Te=class{nodes=[];edges=[];groups=[];warnings=[];seq=0;nextId(e){return this.seq+=1,`${e}${this.seq}`}addGroup(e,t,n){let r={id:this.nextId(`g`),kind:e,label:t,parentId:n};return this.groups.push(r),r.id}addNode(e){let t={id:this.nextId(`n`),...e};return this.nodes.push(t),t}addEdge(e,t,n,r){this.edges.push({id:this.nextId(`e`),from:e,to:t,kind:n,label:r})}visitQuery(e,t,n,r,i,a){let o=[];for(let t=e;t;t=t._next)o.push(t);if(o.length===1)return this.visitSelect(e,t,n,r,i,a);let s=this.addGroup(`query`,r,t),c=(e.set_op??`union`).toUpperCase(),l=new Map(n);this.declareCtes(e,s,l);let u=o.map((e,t)=>this.visitSelect(e,s,new Map(l),`${c} (${t+1})`,`result`,`result`,t===0)),d=this.addNode({kind:i===`result`?`setop`:i,label:i===`result`?c:a,alias:null,qualifier:null,columnCount:u[0]?.columnCount??null,expandsSources:!1,groupId:s,range:null});for(let e of u)this.addEdge(e.id,d.id,`setop`,c);return d}declareCtes(e,t,n){if(Array.isArray(e.with))for(let r of e.with){let e=be(r),i=xe(r);if(!i){this.warnings.push(`CTE ${e}: body not understood`);continue}let a=this.visitQuery(i,t,new Map(n),`WITH ${e}`,`cte`,e);n.set(e.toLowerCase(),a)}}visitSelect(e,t,n,r,i,a,o=!1){let s=this.addGroup(`query`,r,t),c=new Map(n);o||this.declareCtes(e,s,c);let l=[];if(Array.isArray(e.from)&&e.from.length>0){let t=this.addGroup(`from`,`FROM`,s);e.from.forEach((e,n)=>{let r=Se(e.join),i=n===0&&!r?`from`:`join`,a=e.expr?.ast;if(a){let n=e.as??`subquery`,o=this.visitQuery(a,t,new Map(c),`FROM ${n}`,`derived`,n);l.push({node:o,kind:i,label:r});return}if(!e.table){this.warnings.push(`FROM entry not understood (function call or table expression)`);return}let o=c.get(e.table.toLowerCase()),s=this.addNode({kind:o?`cte-ref`:`table`,label:Ce(e),alias:e.as??null,qualifier:e.db??e.schema??null,columnCount:o?o.columnCount:null,expandsSources:!1,groupId:t,range:null});o&&this.addEdge(o.id,s.id,`cte`,null),l.push({node:s,kind:i,label:r})})}let u=[];for(let[t,n]of[[`SELECT`,e.columns],[`WHERE`,e.where],[`GROUP BY`,e.groupby],[`HAVING`,e.having],[`ORDER BY`,e.orderby]]){let e=[];j(n,e),e.forEach((n,r)=>{let i=e.length>1?`${t} (${r+1})`:t;u.push(this.visitQuery(n,s,new Map(c),i,`scalar`,`subquery`))})}let{count:d,expandsSources:f}=we(e),p=this.addNode({kind:i,label:a,alias:null,qualifier:null,columnCount:d,expandsSources:f,groupId:s,range:null});for(let e of l)this.addEdge(e.node.id,p.id,e.kind,e.label);for(let e of u)this.addEdge(e.id,p.id,`scalar`,null);return p}};function Ee(e){let t=Array.isArray(e)?e[0]:e;if(!O(t))return null;let n=new Te;return n.visitQuery(t,null,new Map,`query`,`result`,`result`),Array.isArray(e)&&e.length>1&&n.warnings.push(`only the first of ${e.length} statements is drawn`),{nodes:n.nodes,edges:n.edges,groups:n.groups,warnings:n.warnings}}var M=new Set([`WHERE`,`GROUP`,`HAVING`,`ORDER`,`CONNECT`,`START`,`MODEL`,`FETCH`,`OFFSET`,`FOR`,`UNION`,`INTERSECT`,`MINUS`,`EXCEPT`,`WITH`]),De=new Set([`UNION`,`INTERSECT`,`MINUS`,`EXCEPT`]),N=new Set([...M,`ON`,`USING`,`JOIN`,`INNER`,`LEFT`,`RIGHT`,`FULL`,`CROSS`,`NATURAL`,`OUTER`,`AND`,`OR`,`NOT`,`AS`,`PARTITION`,`PIVOT`,`UNPIVOT`,`SAMPLE`]),P=new Set([`INNER`,`LEFT`,`RIGHT`,`FULL`,`CROSS`,`NATURAL`,`OUTER`]);function F(e){return e?.kind===`identifier`?e.upper??e.value.toUpperCase():``}function I(e){return e!==void 0&&(e.kind===`identifier`||e.kind===`quoted_identifier`)}function L(e,t){let n=0;for(let r=t;r<e.length;r++)if(e[r].kind===`lparen`)n++;else if(e[r].kind===`rparen`&&--n===0)return r+1;return e.length}function R(e,t,n){let r=[];for(let i=t;i<n;i++){if(e[i].kind!==`lparen`)continue;let t=F(e[i+1]),a=Math.min(L(e,i),n);(t===`SELECT`||t===`WITH`)&&(r.push(V(e,i+1,a-1)),i=a-1)}return r}function z(e,t,n,r){let i=[],a=0;for(let o=t;o<n;o++)e[o].kind===`lparen`?a++:e[o].kind===`rparen`?a--:a===0&&r(e[o])&&i.push(o);return i}function B(e,t,n,r){let i=0;for(let a=t;a<n;a++)if(e[a].kind===`lparen`)i++;else if(e[a].kind===`rparen`)i--;else if(i===0&&r(e[a]))return a;return n}function Oe(e,t){let n=[_(e[t])],r=t+1;for(;e[r]?.kind===`punct`&&e[r].value===`.`&&I(e[r+1]);)n.push(_(e[r+1])),r+=2;return{parts:n,next:r}}function ke(e,t,n,r){let i=t;if(e[i]?.kind===`lparen`&&(F(e[i+1])===`SELECT`||F(e[i+1])===`WITH`)){let t=L(e,i),n=V(e,i+1,t-1),a=null,o=t;return F(e[o])===`AS`&&o++,I(e[o])&&!N.has(F(e[o]))&&(a=_(e[o])),{db:null,table:null,as:a,expr:{ast:n},...r?{join:r}:{}}}if(!I(e[i]))return null;let{parts:a,next:o}=Oe(e,i);if(i=o,e[i]?.kind===`lparen`)return null;let s=null;F(e[i])===`AS`&&i++,i<n&&I(e[i])&&!N.has(F(e[i]))&&(s=_(e[i]));let c=a[a.length-1];return{db:a.length>1?a.slice(0,-1).join(`.`):null,table:c,as:s,...r?{join:r}:{}}}function Ae(e,t,n){let r=[],i=e=>e.kind===`punct`&&e.value===`,`,a=e=>F(e)===`JOIN`||P.has(F(e)),o=z(e,t,n,e=>i(e)||a(e)),s=[{at:t,join:null}];for(let t=0;t<o.length;t++){let r=o[t];if(i(e[r])){s.push({at:r+1,join:null});continue}let a=[],c=r;for(;c<n&&(P.has(F(e[c]))||F(e[c])===`JOIN`);){if(a.push(F(e[c])),F(e[c])===`JOIN`){c++;break}c++}for(;t+1<o.length&&o[t+1]<c;)t++;s.push({at:c,join:a.join(` `)||`JOIN`})}for(let t=0;t<s.length;t++){let i=s[t],a=t+1<s.length?s[t+1].at:n,o=ke(e,i.at,a,i.join);o&&r.push(o)}return r}function V(e,t,n){let r={type:`select`,with:null,columns:`*`,from:[],where:[]},i=t;if(F(e[i])===`WITH`)for(i++,F(e[i])===`RECURSIVE`&&i++,r.with=[];i<n&&I(e[i]);){let t=_(e[i]);if(i++,e[i]?.kind===`lparen`&&F(e[i+1])!==`SELECT`&&(i=L(e,i)),F(e[i])!==`AS`||(i++,(F(e[i])===`MATERIALIZED`||F(e[i])===`NOT`&&F(e[i+1])===`MATERIALIZED`)&&(i+=F(e[i])===`NOT`?2:1),e[i]?.kind!==`lparen`))break;let n=L(e,i);if(r.with.push({name:{value:t},stmt:{ast:V(e,i+1,n-1)}}),i=n,e[i]?.kind===`punct`&&e[i].value===`,`){i++;continue}break}if(F(e[i])!==`SELECT`)return r;i++,[`DISTINCT`,`ALL`,`UNIQUE`].includes(F(e[i]))&&i++;let a=B(e,i,n,e=>F(e)===`FROM`),o=z(e,i,a,e=>e.kind===`punct`&&e.value===`,`),s=[],c=i;for(let e of o)s.push([c,e]),c=e+1;s.push([c,a]);let l=e=>e.kind===`operator`&&e.value===`*`,u=s.filter(([t,n])=>B(e,t,n,l)<n);if(r.columns=s.length===1&&u.length===1&&s[0][1]-s[0][0]===1?`*`:u.length>0?[{expr:{type:`star`}},...s.slice(1).map(()=>({}))]:s.map(([t,n])=>{let r=R(e,t,n);return r.length>0?{expr:{ast:r[0]}}:{}}),a>=n)return r;let d=B(e,a+1,n,e=>M.has(F(e)));r.from=Ae(e,a+1,d);let f=B(e,d,n,e=>De.has(F(e)));if(r.where=R(e,d,f).map(e=>({ast:e})),f<n){let t=F(e[f]),i=F(e[f+1])===`ALL`;r.set_op=`${t.toLowerCase()}${i?` all`:``}`,r._next=V(e,f+(i?2:1),n)}return r}function je(e,t){let n=new S(t).tokenize(e).filter(e=>e.kind!==`space`&&e.kind!==`comment`&&e.kind!==`terminator`);if(n.length===0)return null;let r=F(n[0]);return r!==`SELECT`&&r!==`WITH`?null:V(n,0,n.length)}var Me=new Set(`ON.USING.WHERE.GROUP.ORDER.HAVING.LIMIT.OFFSET.FETCH.WINDOW.JOIN.INNER.LEFT.RIGHT.FULL.CROSS.NATURAL.OUTER.STRAIGHT_JOIN.APPLY.UNION.INTERSECT.EXCEPT.MINUS.SELECT.FROM.WITH.AND.OR.NOT.SET.VALUES.WHEN.THEN.ELSE.END.FOR.INTO.START.CONNECT.PIVOT.AS.BY.DISTINCT.ALL.ANY.CASE.IS.NULL.IN.EXISTS.BETWEEN.LIKE.ASC.DESC.RECURSIVE.TOP.PERCENT.TIES.ROW.ROWS.ONLY.NEXT.FIRST.PARTITION.OVER.LATERAL.RETURNING.OUTPUT.PRIOR.MATERIALIZED.FILTER.INSERT.UPDATE.DELETE.CREATE.TABLE.VIEW.EXPLAIN.PRAGMA.MERGE`.split(`.`));function H(e){return e?.kind===`identifier`&&Me.has(e.upper??e.value.toUpperCase())}function U(e){return e!==void 0&&(e.kind===`identifier`||e.kind===`quoted_identifier`)}function Ne(e){let t=e.filter(e=>e.kind!==`space`&&e.kind!==`comment`),n=[];for(let e=0;e<t.length;e++){let r=t[e];if(!U(r)||H(r))continue;let i=[_(r)],a=r;for(;U(t[e+2])&&t[e+1]?.kind===`punct`&&t[e+1].value===`.`;)a=t[e+2],i.push(_(a)),e+=2;let o=null,s=t[e+1];s?.kind===`identifier`&&s.upper===`AS`?(s=t[e+2],U(s)&&!H(s)&&(o=_(s),e+=2)):U(s)&&!H(s)&&(o=_(s),e+=1),n.push({name:i.join(`.`),alias:o,start:r.start,end:a.end,used:!1})}return n}function Pe(e){switch(e.kind){case`table`:case`cte-ref`:case`cte`:case`derived`:return e.label;default:return null}}function Fe(e,t,n){let r=Ne(new S(n).tokenize(t)),i=e.nodes.map(e=>{let t=Pe(e);if(!t)return e;let n=t.toLowerCase(),i=e.alias?.toLowerCase()??null,a=r.find(e=>!e.used&&e.name.toLowerCase()===n&&(!i||e.alias?.toLowerCase()===i))??r.find(e=>!e.used&&e.alias?.toLowerCase()===n);return a?(a.used=!0,{...e,range:[a.start,a.end]}):e});return{...e,nodes:i}}function W(e){return e.label.toLowerCase()}function G(e){let t=new Map;for(let n of e.nodes){if(n.kind!==`table`)continue;let e=W(n);if(t.has(e))continue;let r=n.label.split(`.`);t.set(e,{key:e,qualifier:r.length>1?r.slice(0,-1).join(`.`):null,table:r[r.length-1]})}return[...t.values()]}function Ie(e,t){let n=new Map,r=e.nodes.map(e=>{let r=e.kind===`table`&&e.columnCount===null&&t.has(W(e))?{...e,columnCount:t.get(W(e))??null}:{...e};return n.set(r.id,r),r}),i=new Set([`from`,`join`,`cte`,`setop`]);for(let t=0;t<r.length;t++){let t=!1;for(let a of r){if(a.columnCount!==null)continue;let r=e.edges.filter(e=>e.to===a.id&&i.has(e.kind)).map(e=>n.get(e.from)).filter(e=>e!==void 0),o=r.filter(e=>e.columnCount!==null);r.length!==0&&o.length===r.length&&(a.expandsSources?(a.columnCount=o.reduce((e,t)=>e+(t.columnCount??0),0),t=!0):r.length===1&&(a.columnCount=o[0].columnCount,t=!0))}if(!t)break}return{...e,nodes:r}}async function K(e,t){let n=_e(t.id),r;if(n)try{r=(await ve(n)).astify(ge(e,n,t.syntax),{database:n})}catch(e){return{ok:!1,reason:`parse-error`,message:e instanceof Error?e.message.split(`
8
+ `)[0]:String(e)}}else if(t.id===`oracle`)r=je(e,t.syntax);else return{ok:!1,reason:`unsupported-engine`,message:`No SQL grammar for ${t.label}`};let i=Ee(r);return i?{ok:!0,graph:Fe(i,e,t.syntax)}:{ok:!1,reason:`not-a-query`,message:`Only SELECT statements have a structure graph`}}var Le=8,Re=3,ze=[{kind:`column`,re:/unknown column '([^']+)'/i},{kind:`table`,re:/(?:unknown table|table) '([^']+)'(?: doesn't exist)?/i},{kind:`column`,re:/column "([^"]+)" does not exist/i},{kind:`table`,re:/relation "([^"]+)" does not exist/i},{kind:`column`,re:/no such column:\s*(\S+)/i},{kind:`table`,re:/no such table:\s*(\S+)/i},{kind:`column`,re:/invalid column name '([^']+)'/i},{kind:`table`,re:/invalid object name '([^']+)'/i},{kind:`column`,re:/ORA-00904:\s*"?([^":]+)"?:\s*invalid identifier/i}];function q(e){for(let{kind:t,re:n}of ze){let r=n.exec(e);if(!r)continue;let i=r[1].trim().replace(/[`"'[\]]/g,``),a=i.split(`.`).pop()??i;if(a)return{kind:t,name:a}}return null}function J(e){return e.toLowerCase().replace(/[_\s-]/g,``)}function Be(e,t,n){if(Math.abs(e.length-t.length)>n)return n+1;let r=Array.from({length:t.length+1},(e,t)=>t);for(let i=1;i<=e.length;i++){let a=[i],o=i;for(let n=1;n<=t.length;n++){let s=e[i-1]===t[n-1]?0:1,c=Math.min(r[n]+1,a[n-1]+1,r[n-1]+s);a.push(c),c<o&&(o=c)}if(o>n)return n+1;r=a}return r[t.length]}function Ve(e){return e.length<=4?1:e.length<=8?2:3}function Y(e,t,n=Re){let r=J(e);if(!r)return[];let i=Ve(r),a=[];for(let n of t){let t=J(n);if(!t||t===r){t===r&&n!==e&&a.push({name:n,d:0,prefix:!0});continue}let o=Be(r,t,i);o>i||a.push({name:n,d:o,prefix:t.startsWith(r)||r.startsWith(t)})}a.sort((e,t)=>e.d-t.d||Number(t.prefix)-Number(e.prefix)||e.name.localeCompare(t.name));let o=a.filter(e=>e.d===0);return(o.length>0?o:a).slice(0,n).map(e=>e.name)}function He(e){return e.filter(e=>e.kind!==`space`&&e.kind!==`comment`)}function Ue(e,t){let n=[],r;try{r=He(new S(t).tokenize(e))}catch{return n}let i=t.quoteIdentifier(`x`).startsWith("`");for(let e=0;e<r.length;e++){let a=r[e];if(a.kind===`quoted_identifier`&&a.value.startsWith("`")&&!i){let e=a.value.slice(1,-1);n.push({code:`syntaxSwap`,params:{engine:t.label,found:a.value,expected:t.quoteIdentifier(e)}});break}}for(let e=1;e<r.length;e++){let i=r[e];if(i.kind===`quoted_identifier`&&i.value.startsWith(`"`)&&t.syntax.doubleQuoteIsIdentifier){let a=r[e-1];if(a.kind===`operator`&&/^(=|<>|!=|<|>|<=|>=)$/.test(a.value)){n.push({code:`doubleQuotedLiteral`,params:{engine:t.label,value:i.value.slice(1,-1)}});break}}}let a=t.syntax.limitStyle;for(let e=0;e<r.length;e++){let i=r[e];if(i.kind!==`identifier`)continue;let o=r[e+1],s=o?.kind===`number`?o.value:`n`;if(i.upper===`LIMIT`&&a!==`limit`&&o?.kind===`number`){n.push({code:`syntaxSwap`,params:{engine:t.label,found:`LIMIT ${s}`,expected:a===`top`?`SELECT TOP ${s}`:`FETCH FIRST ${s} ROWS ONLY`}});break}if(i.upper===`TOP`&&a!==`top`&&o?.kind===`number`&&r[e-1]?.upper===`SELECT`){n.push({code:`syntaxSwap`,params:{engine:t.label,found:`TOP ${s}`,expected:a===`limit`?`LIMIT ${s}`:`FETCH FIRST ${s} ROWS ONLY`}});break}}return n}function We(e){let{message:t,sql:n,engine:r,columns:i,tables:a}=e,o=[],s=q(t);if(s?.kind===`column`){let e=i.size>1,t=[],n=new Map;for(let[e,r]of i)for(let i of r)t.push(i),n.has(i)||n.set(i,e);let r=Y(s.name,[...new Set(t)]);r.length>0&&o.push({code:`unknownColumn`,params:{name:s.name,suggestions:r.map(t=>e?`${n.get(t)}.${t}`:t).join(`, `)}})}if(s?.kind===`table`){let e=Y(s.name,a);e.length>0&&o.push({code:`unknownTable`,params:{name:s.name,suggestions:e.join(`, `)}})}return[...o,...Ue(n,r)]}var X=new Map,Z=new Map;function Q(e){let t=i.getState(),n=t.trees[e];return n?s(n,t.selectedNodeId[e])??c(n)[0]??null:null}function Ge(e,t){let r=o(e),i=n.getState().activeConnections.find(t=>t.id===e),a=r.capabilities.schemas?null:i?.database;return t||a||Q(e)}async function $(e,t){let i=r.getState().tabs[e]?.find(e=>e.id===t);if(!i?.error||!i.errorSql)return null;let s=o(e),c={engine:s,sql:i.errorSql,message:i.error,tables:new Map},l=n.getState().activeConnections.find(t=>t.id===e),u=s.capabilities.schemas?null:l?.database,d=i.database||u||Q(e);if(!l?.serverConnectionId||!d)return c;let f=a(l.serverConnectionId),p=await K(c.sql,s).catch(()=>null),m=p?.ok?G(p.graph).slice(0,Le):[];return await Promise.all(m.map(async({qualifier:e,table:t})=>{let n=e??d,r=`${l.serverConnectionId}|${n}|${t}`,i=X.get(r);if(i){c.tables.set(t,i);return}try{let e=await s.introspect.listColumns(f,n,t);e.length>0&&(X.set(r,e),c.tables.set(t,e))}catch{}})),c}async function Ke(e,t){let i=r.getState().tabs[e]?.find(e=>e.id===t);if(!i?.error)return[];let s=i.errorSql??``,c=o(e),l=q(i.error);if(!s)return[];if(!l)return Ue(s,c);let u=n.getState().activeConnections.find(t=>t.id===e),d=c.capabilities.schemas?null:u?.database,f=i.database||d||Q(e),p=new Map,m=[];if(u?.serverConnectionId&&f){let n=a(u.serverConnectionId);if(l.kind===`column`){let n=await $(e,t);for(let[e,t]of n?.tables??[])p.set(e,t.map(e=>e.name))}if(l.kind===`table`){let e=`${u.serverConnectionId}|${f}`,t=Z.get(e);if(t)m=t;else try{m=(await c.introspect.listTables(n,f)).map(e=>e.name);let t=await c.introspect.listViews(n,f).catch(()=>[]);m=[...m,...t],Z.set(e,m)}catch{}}}return We({message:i.error,sql:s,engine:c,columns:p,tables:m})}function qe(e,t){let r=n.getState().activeConnections.find(t=>t.id===e)?.serverConnectionId;if(!r)return;let i=t?`${r}|${t}|`:`${r}|`;for(let e of[...X.keys()])e.startsWith(i)&&X.delete(e);if(t){Z.delete(`${r}|${t}`);return}for(let e of[...Z.keys()])e.startsWith(`${r}|`)&&Z.delete(e)}export{K as a,S as c,le as d,x as f,$ as i,fe as l,Ge as n,Ie as o,ue as p,Ke as r,G as s,qe as t,_ as u};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/C9ZwrwyI.js","assets/hePW80VL.js","assets/BkIkgVK5.js","assets/C0O3rJzW.js","assets/BAZqI8g_.js","assets/CpZOnYKF.js","assets/CaoceGhm.js","assets/G6EbcZKg.js","assets/eFSiW0Lh.js","assets/DC8XCjJ3.js","assets/DP94Ond0.js","assets/B49XtolG.js","assets/Bit0Kfog.js","assets/dMlgA_r1.js","assets/Dd9quIZg.js","assets/CYMzEa4j.js","assets/Dht5Mpyb.js","assets/DAFA-E1-.js","assets/BVMdJAj-.js","assets/DBHRzz66.js","assets/3z4eHGF-.js","assets/Bs5VSn0X.js","assets/KuSp3gJs.css"])))=>i.map(i=>d[i]);
2
- import{r as e}from"./hePW80VL.js";import{c as t,h as n,n as r}from"./BkIkgVK5.js";import{a as i,i as a}from"./BAZqI8g_.js";import{_ as o,g as s,h as c,m as l,p as u,s as d,t as f}from"./DC8XCjJ3.js";import{n as p}from"./DP94Ond0.js";import{D as m}from"./B49XtolG.js";import{t as h}from"./Bit0Kfog.js";import{n as g}from"./dMlgA_r1.js";import{S as _,a as v,c as y}from"./Dd9quIZg.js";import{a as b}from"./CYMzEa4j.js";import{n as x,r as ee}from"./Dht5Mpyb.js";import{i as te}from"./DAFA-E1-.js";import{c as S,d as C,f as w,l as ne,p as re,t as T}from"./BVMdJAj-.js";import{n as E,t as D}from"./DBHRzz66.js";function O(e){return f.getState().activeConnections.find(t=>t.id===e)?.database||D(_.getState().trees[e]??[])}function ie(e,t,n,r){return x(e).tree.objectPath(t,n,r,O(e))}function k(e,t){return x(e).tree.namespacePath(t,O(e))}function A(e,t){for(let n of e){if(n.id===t)return n;let e=A(n.children,t);if(e)return e}return null}async function ae(e,t,n){let r=_.getState;for(let i=0;i<t.length;i++){let a=r().trees[e];if(!a)return!1;let o=A(a,t[i]);if(!o)return!1;if(i===t.length-1)return r().setSelected(e,o.id),!0;o.children.length===0&&!o.isLeaf?await n(e,o):o.isExpanded||r().setExpanded(e,o.id,!0)}return!1}function j(e,t){for(let n of e){if(n.id===t)return n;let e=j(n.children,t);if(e)return e}return null}function M(e,t){let n=_.getState(),r=n.trees[e];if(!r||!t)return;let i=k(e,t),a=null;for(let t of i){let i=j(r,t);if(!i||(a=i,i.isLeaf))break;!i.isExpanded&&i.children.length>0&&n.setExpanded(e,i.id,!0)}!a||a.id!==i[i.length-1]||(n.setSelected(e,a.id),!a.isExpanded&&a.children.length>0&&n.setExpanded(e,a.id,!0))}var N=e(n(),1);function oe(e,t,n){let r=[];function i(e){for(let n of e){if(r.push(n),n.id===t||n.children.length>0&&i(n.children))return!0;r.pop()}return!1}i(e);for(let e=r.length-1;e>=0;e--)if(r[e].type===n)return r[e];return null}function P(e,t){for(let n of e){if(n.id===t)return n;if(n.children.length>0){let e=P(n.children,t);if(e)return e}}return null}var F=h(`schemaTreeLoadingRoots`,()=>new Set);h(`schemaTreeCacheWriter`,()=>{let e={};return _.subscribe(t=>{if(t.trees!==e){for(let[n,r]of Object.entries(t.trees)){if(r===e[n])continue;let t=f.getState().activeConnections.find(e=>e.id===n);t&&u(t)&&c(n,s(t),r)}e=t.trees}})});function I(e){let t=f.getState().activeConnections.find(t=>t.id===e);return t?.serverConnectionId?{engine:x(e),run:v(t.serverConnectionId),database:t.database||void 0}:null}function se(){let{setTree:e,setChildren:t,setNodeMetadata:n,setLoading:a}=_(),c=(0,N.useCallback)(async t=>{let n=I(t);if(n&&!F.has(t)){F.add(t);try{let r=f.getState().activeConnections.find(e=>e.id===t),i=r&&u(r)?await l(t,s(r)):null;e(t,i??await n.engine.tree.loadRoot(n))}catch(n){let a=n instanceof Error?n.message:String(n);console.error(`Failed to load databases:`,n),r.getState().setFooterMessage(i.t(`schema.tree.loadDatabasesFailed`,{message:a})),e(t,[])}finally{F.delete(t)}}},[e]),d=(0,N.useCallback)(async(e,r)=>{if(!_.getState().trees[e])return;let i=I(e);if(i&&!r.isLeaf){a(e,r.id,!0);try{let a=await i.engine.tree.loadChildren(i,r);t(e,r.id,a),Promise.all(a.filter(e=>e.type===o.FOLDER&&e.metadata?.countable).map(async t=>{try{let r=await i.engine.tree.loadChildren(i,t);n(e,t.id,{count:r.length})}catch(e){console.error(`Failed to count ${t.text}:`,e)}}))}catch(t){console.error(`Failed to load children:`,t),a(e,r.id,!1)}}},[t,n,a]);return{loadDatabases:c,loadChildren:d,refreshNode:(0,N.useCallback)(async(e,t)=>{await d(e,t)},[d]),createNode:b,findNode:P,findAncestor:oe}}async function L(e,t){T(e,t);let n=_.getState().trees[e];if(!n||!t)return;let r=I(e);if(!r)return;let i=k(e,t),a=E(n,i[i.length-1]);!a||a.children.length===0||await Promise.all(a.children.filter(e=>e.type===o.FOLDER).map(async t=>{try{let n=await r.engine.tree.loadChildren(r,t),i=_.getState();(t.children.length>0||t.isExpanded)&&i.setChildren(e,t.id,n),t.metadata?.countable&&i.setNodeMetadata(e,t.id,{count:n.length})}catch(e){console.error(`Failed to refresh ${t.text}:`,e)}}))}async function ce(e){T(e);let t=I(e);t&&_.getState().setTree(e,await t.engine.tree.loadRoot(t))}var R=class extends Error{sql;constructor(e,t){super(e),this.name=`QueryError`,this.sql=t}},z=class extends Error{constructor(e=`Cancelled`){super(e),this.name=`ExecutionCancelled`}};function B(e){let t=e.fields??[],n=e.records??[];return{fields:t.map(e=>({name:e.name,type:e.type,orgTable:e.orgTable??e.table??``,orgName:e.orgName??e.name,db:e.db??``})),rows:n.map(e=>{let n={};return t.forEach((t,r)=>{n[t.name]=e[r]}),n}),affectedRows:e.affectedRows??0,insertId:e.insertId??0,message:e.message??(n.length>0?i.t(`services.query.rowsReturned`,{count:n.length}):i.t(`services.query.rowsAffected`,{count:e.affectedRows??0}))}}async function V(e,t,n,r=ee(t),i){let a=new Set(e.fields.map(e=>e.orgTable).filter(Boolean));if(a.size!==1)return e;let o=[...a][0];try{let a=i??await r.introspect.getPrimaryKeys(v(t),n,o);a.length>0&&(e.primaryKeys=a)}catch{}return!e.primaryKeys?.length&&e.fields.some(e=>e.name===`_rowid_`)&&(e.primaryKeys=[m]),e}var H=new Set([`SELECT`,`SHOW`,`EXPLAIN`,`DESCRIBE`,`DESC`,`HELP`,`VALUES`,`TABLE`,`WITH`,`USE`,`SET`,`CHECK`,`CHECKSUM`]);function U(e){return e.kind===`PRAGMA`?!e.sql.includes(`=`):!(!H.has(e.kind)||e.destructive||e.kind===`SELECT`&&C(e,`INTO`))}var W=new Set([`INSERT`,`UPDATE`,`DELETE`,`REPLACE`,`MERGE`,`LOAD`]),le=new Set([`CREATE`,`ALTER`,`DROP`,`TRUNCATE`,`RENAME`,`GRANT`,`REVOKE`,`FLUSH`,`LOCK`,`UNLOCK`]),ue=new Set([`CREATE`,`ALTER`,`DROP`,`RENAME`]);function de(e){return W.has(e.kind)||!!e.destructive?.dataLoss}function G(e,t,n=`limit`){if(t<=0||e.kind!==`SELECT`||e.limit!==null||C(e,`LIMIT`)||C(e,`INTO`)||C(e,`FOR`)||C(e,`LOCK`))return{sql:e.sql,limited:!1};if(n===`top`){if(C(e,`TOP`)||C(e,`OFFSET`))return{sql:e.sql,limited:!1};let n=re(e);return n===-1?{sql:e.sql,limited:!1}:{sql:`${e.sql.slice(0,n)} TOP ${t}${e.sql.slice(n)}`,limited:!0}}return n===`fetch`?C(e,`FETCH`)||/\bROWNUM\b/i.test(e.sql)?{sql:e.sql,limited:!1}:{sql:`${e.sql} FETCH FIRST ${t} ROWS ONLY`,limited:!0}:{sql:`${e.sql} LIMIT ${t}`,limited:!0}}function fe(e,t=0){let n=K();return n<=0?``:e.limitClause(n,t)}function K(){return p.getState().resultRowLimit}function pe(e){let t=e.destructive,n=t.names.length?t.names.join(`, `):i.t(`services.destructive.unknownTarget`);switch(t.action){case`DROP`:return`DROP ${t.objectType} ${n}`;case`TRUNCATE`:return`TRUNCATE ${n}`;case`DELETE_ALL`:return i.t(`services.destructive.deleteAll`,{target:n});case`UPDATE_ALL`:return i.t(`services.destructive.updateAll`,{target:n});case`ALTER_DROP`:return i.t(`services.destructive.alterDrop`,{target:n})}}async function me(e){if(!p.getState().confirmDestructive)return!0;let t=e.filter(e=>e.destructive?.dataLoss);return t.length===0||r.getState().requestDestructiveConfirm({title:i.t(`services.destructive.title`,{count:t.length}),description:i.t(`services.destructive.description`),statements:t.map(pe),confirmLabel:i.t(`services.runAnyway`)})}async function he(e,t){if(!e.readOnly)return;let n=t.filter(e=>!U(e));if(n.length===0)return;let a=`${e.hostName||e.host}`;if(!p.getState().allowReadOnlyOverride)throw new R(i.t(`services.readOnly.refused`,{label:a,count:n.length}));if(!await r.getState().requestDestructiveConfirm({title:i.t(`services.readOnly.title`,{label:a}),description:i.t(`services.readOnly.description`),statements:n.map(e=>e.sql.length>120?e.sql.slice(0,117)+`...`:e.sql),confirmLabel:i.t(`services.runAnyway`)}))throw new z(`Cancelled: connection is read-only.`)}function q(e,t){let n=f.getState(),r=n.activeConnections.find(t=>t.id===e);if(!r?.serverConnectionId)throw new R(i.t(`services.query.notConnected`));if(n.pendingReopen[e])throw new R(i.t(`services.query.fileNotOpen`));return{connId:e,serverConnId:r.serverConnectionId,conn:r,engine:x(e),tabId:t}}async function J(e,t,n){let r=new S(e.engine).statements(t);if(e.conn.scratchpad){let{materializeFederated:t}=await a(async()=>{let{materializeFederated:e}=await import(`./C9ZwrwyI.js`).then(e=>e.B);return{materializeFederated:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));for(let n of r)n.sql=await t(e.connId,n.sql)}if(await he(e.conn,r),!n.skipDestructiveConfirm&&!await me(r))throw new z;return r}async function Y(e,n,a){let{connId:o,serverConnId:s,engine:c,tabId:l}=e,u=n.stmt?.kind??``,d=()=>f.getState();if(e.conn.transactionMode===`manual`&&c.capabilities.transactions&&n.stmt&&de(n.stmt)&&!d().transactionOpen[o]){let e=await y(s,c.getQuery(`START_TRANSACTION`),a||void 0);if(!e.success)throw new R(e.message??i.t(`services.transaction.startFailed`));d().setTransactionOpen(o,!0),r.getState().setFooterMessage(i.t(`services.transaction.started`))}let p=await y(s,n.sql,a||void 0);if(!p.success){let r=p.message??i.t(`services.query.failed`);throw g.getState().recordExecution({connectionId:o,tabId:l,query:n.sql,database:a,executionTime:p.execTime,error:r,kind:u||void 0}),t(`query_execute`,{dbms:e.conn.dbms,kind:u||`unknown`,source:l?`editor`:`app`,success:!1}),new R(r,n.sql)}let m=B(p);return u===`COMMIT`||u===`ROLLBACK`?d().setTransactionOpen(o,!1):u===`START`||u===`BEGIN`?d().setTransactionOpen(o,!0):le.has(u)&&d().transactionOpen[o]&&c.capabilities.implicitCommitDdl&&(d().setTransactionOpen(o,!1),r.getState().setFooterMessage(i.t(`services.transaction.implicitCommit`,{kind:u}))),ue.has(u)&&L(o,a),e.skipHistory||g.getState().recordExecution({connectionId:o,tabId:l,query:n.sql,database:a,executionTime:p.execTime,kind:u||void 0,...m.fields.length>0?{rowCount:m.rows.length}:{affectedRows:m.affectedRows}}),t(`query_execute`,{dbms:e.conn.dbms,kind:u||`unknown`,source:l?`editor`:`app`,success:!0,exec_time_ms:Math.round(p.execTime??0)}),{qr:m,execTime:p.execTime}}async function ge(e,t,n={}){let r=q(e,n.tabId??null);r.skipHistory=n.skipHistory;let a=t.trim();if(!a)throw new R(i.t(`services.query.nothingToExecute`));let o=await J(r,a,n),s=n.database??``;n.previewWrites&&p.getState().previewAffectedRows&&await Q(r,o,s);let c=o.length>0?o.map(e=>({sql:e.sql,stmt:e})):[{sql:a,stmt:null}],l=null;for(let e of c){let{qr:t}=await Y(r,e,s);n.primaryKeys&&t.fields.length>0&&s&&await V(t,r.serverConnId,s,r.engine,Array.isArray(n.primaryKeys)?n.primaryKeys:void 0),l=t}return l}function _e(e,t){return X(e,t)?.sql??null}function X(e,t){let n=g.getState().tabs[e]?.find(e=>e.id===t);if(!n)return null;let r=te(e,t);if(r&&`selection`in r)return{sql:r.selection,start:r.start};let i=r&&`cursorOffset`in r?r.cursorOffset:n.query.length,a=new S(x(e)).statements(n.query);if(a.length===0)return null;let o=a.find(e=>i>=w(e)&&i<=e.end)??[...a].reverse().find(e=>e.end<=i)??a[0];return{sql:o.sql,start:w(o)}}async function ve(e,n,r={}){let o=()=>g.getState(),s=o().tabs[e]?.find(e=>e.id===n);if(!s)return;let c=(r.sql??s.query)?.trim();if(!c)return;let l,u;try{l=q(e,n),u=await J(l,c,{})}catch(t){if(t instanceof z){t.message!==`Cancelled`&&o().setError(e,n,t.message);return}o().setError(e,n,t instanceof Error?t.message:String(t));return}let f=p.getState(),m=new Map;if(f.previewAffectedRows)try{m=await Q(l,u,s.database||``)}catch(e){if(e instanceof z)return;throw e}let h=m.size===1,_=u.length>0?u.map(e=>({...G(e,f.resultRowLimit,l.engine.syntax.limitStyle),stmt:e})):[{sql:c,limited:!1,stmt:null}],v=r.sql?r.sqlOffset??null:0;a(async()=>{let{readStructures:e}=await import(`./C9ZwrwyI.js`).then(e=>e.tt);return{readStructures:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])).then(({readStructures:t})=>t(e,n,u.length>0?u.map(e=>({sql:e.sql,start:v===null?null:v+w(e)})):[{sql:c,start:v}])),o().captureRevision(e,n,`execute`),o().setExecuting(e,n,!0),o().setError(e,n,null);let y=[],b=s.database||``;try{for(let r of _){let{qr:a,execTime:s}=await Y(l,r,b);if(a.sql=r.stmt?.sql??r.sql,a.executionTime=s,r.limited&&a.rows.length>=f.resultRowLimit&&(a.limited=!0,a.message=i.t(`services.query.rowsReturnedLimited`,{count:a.rows.length,limit:f.resultRowLimit})),!b&&a.fields.length>0){let t=a.fields.find(e=>e.db)?.db;t&&(b=t,o().setDatabase(e,n,b),M(e,b))}a.fields.length>0&&b&&await V(a,l.serverConnId,b,l.engine);let c=h&&r.stmt?m.get(r.stmt):void 0;c!==void 0&&Number.isFinite(a.affectedRows)&&a.affectedRows!==c&&(a.warning=i.t(`services.query.dryRunMismatch`,{predicted:c,actual:a.affectedRows}),t(`dry_run_mismatch`,{dbms:l.conn.dbms,kind:r.stmt?.kind??`unknown`})),y.push(a)}o().setResults(e,n,y)}catch(t){y.length>0&&o().setResults(e,n,y),o().setError(e,n,t instanceof Error?t.message:String(t),t instanceof R?t.sql:null),t instanceof R&&d(`query_error`)}finally{o().setExecuting(e,n,!1)}}var Z=50;function ye(e,t,n){return e.syntax.limitStyle===`top`?t.replace(/^SELECT\b/i,`SELECT TOP ${n}`):`${t} ${e.limitClause(n)}`}async function Q(e,t,n){let i=new Map;for(let a of t){if(a.kind!==`UPDATE`&&a.kind!==`DELETE`)continue;let t=ne(a);if(!t)continue;let o=null,s=[],c=[],l,u=await y(e.serverConnId,t.count,n||void 0);if(u.success){let r=Number(u.records[0]?.[0]);o=Number.isFinite(r)?r:null;let i=await y(e.serverConnId,t.limited?t.select:ye(e.engine,t.select,Z),n||void 0);i.success?(s=i.fields.map(e=>e.name),c=i.records):l=i.message}else l=u.message;if(!await r.getState().requestDryRun({statement:a.sql,previewSql:t.select,count:o,fields:s,rows:c,truncated:o!==null&&c.length<o,error:l}))throw new z;o!==null&&i.set(a,o)}return i}async function $(e,t){let n=f.getState(),a=n.activeConnections.find(t=>t.id===e);if(!a?.serverConnectionId)return;let o=x(e);try{let e=await y(a.serverConnectionId,o.getQuery(t));if(!e.success)throw new R(e.message??i.t(`services.transaction.commandFailed`,{name:t}));r.getState().setFooterMessage(t===`COMMIT`?i.t(`services.transaction.committed`):i.t(`services.transaction.rolledBack`))}catch(e){r.getState().setFooterMessage(i.t(`services.transaction.commandFailedWith`,{name:t,message:e instanceof Error?e.message:String(e)}))}finally{n.setTransactionOpen(e,!1)}}var be=e=>$(e,`COMMIT`),xe=e=>$(e,`ROLLBACK`);export{ae as _,ve as a,xe as c,K as d,fe as f,M as g,se as h,be as i,ge as l,ce as m,R as n,_e as o,L as p,G as r,U as s,z as t,X as u,ie as v};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Bg6u9htc.js","assets/hePW80VL.js","assets/BkIkgVK5.js","assets/C0O3rJzW.js","assets/BAZqI8g_.js","assets/CpZOnYKF.js","assets/CaoceGhm.js","assets/G6EbcZKg.js","assets/eFSiW0Lh.js","assets/DC8XCjJ3.js","assets/DP94Ond0.js","assets/B49XtolG.js","assets/Bit0Kfog.js","assets/dMlgA_r1.js","assets/Dd9quIZg.js","assets/CYMzEa4j.js","assets/Dht5Mpyb.js","assets/DAFA-E1-.js","assets/DjDcAaBy.js","assets/DBHRzz66.js","assets/3z4eHGF-.js","assets/Bs5VSn0X.js","assets/KuSp3gJs.css"])))=>i.map(i=>d[i]);
2
+ import{r as e}from"./hePW80VL.js";import{c as t,h as n,n as r}from"./BkIkgVK5.js";import{a as i,i as a}from"./BAZqI8g_.js";import{_ as o,g as s,h as c,m as l,p as u,s as d,t as f}from"./DC8XCjJ3.js";import{n as p}from"./DP94Ond0.js";import{D as m}from"./B49XtolG.js";import{t as h}from"./Bit0Kfog.js";import{n as g}from"./dMlgA_r1.js";import{S as _,a as v,c as y}from"./Dd9quIZg.js";import{a as b}from"./CYMzEa4j.js";import{n as x,r as ee}from"./Dht5Mpyb.js";import{i as te}from"./DAFA-E1-.js";import{c as S,d as C,f as w,l as ne,p as re,t as T}from"./DjDcAaBy.js";import{n as E,t as D}from"./DBHRzz66.js";function O(e){return f.getState().activeConnections.find(t=>t.id===e)?.database||D(_.getState().trees[e]??[])}function ie(e,t,n,r){return x(e).tree.objectPath(t,n,r,O(e))}function k(e,t){return x(e).tree.namespacePath(t,O(e))}function A(e,t){for(let n of e){if(n.id===t)return n;let e=A(n.children,t);if(e)return e}return null}async function ae(e,t,n){let r=_.getState;for(let i=0;i<t.length;i++){let a=r().trees[e];if(!a)return!1;let o=A(a,t[i]);if(!o)return!1;if(i===t.length-1)return r().setSelected(e,o.id),!0;o.children.length===0&&!o.isLeaf?await n(e,o):o.isExpanded||r().setExpanded(e,o.id,!0)}return!1}function j(e,t){for(let n of e){if(n.id===t)return n;let e=j(n.children,t);if(e)return e}return null}function M(e,t){let n=_.getState(),r=n.trees[e];if(!r||!t)return;let i=k(e,t),a=null;for(let t of i){let i=j(r,t);if(!i||(a=i,i.isLeaf))break;!i.isExpanded&&i.children.length>0&&n.setExpanded(e,i.id,!0)}!a||a.id!==i[i.length-1]||(n.setSelected(e,a.id),!a.isExpanded&&a.children.length>0&&n.setExpanded(e,a.id,!0))}var N=e(n(),1);function oe(e,t,n){let r=[];function i(e){for(let n of e){if(r.push(n),n.id===t||n.children.length>0&&i(n.children))return!0;r.pop()}return!1}i(e);for(let e=r.length-1;e>=0;e--)if(r[e].type===n)return r[e];return null}function P(e,t){for(let n of e){if(n.id===t)return n;if(n.children.length>0){let e=P(n.children,t);if(e)return e}}return null}var F=h(`schemaTreeLoadingRoots`,()=>new Set);h(`schemaTreeCacheWriter`,()=>{let e={};return _.subscribe(t=>{if(t.trees!==e){for(let[n,r]of Object.entries(t.trees)){if(r===e[n])continue;let t=f.getState().activeConnections.find(e=>e.id===n);t&&u(t)&&c(n,s(t),r)}e=t.trees}})});function I(e){let t=f.getState().activeConnections.find(t=>t.id===e);return t?.serverConnectionId?{engine:x(e),run:v(t.serverConnectionId),database:t.database||void 0}:null}function se(){let{setTree:e,setChildren:t,setNodeMetadata:n,setLoading:a}=_(),c=(0,N.useCallback)(async t=>{let n=I(t);if(n&&!F.has(t)){F.add(t);try{let r=f.getState().activeConnections.find(e=>e.id===t),i=r&&u(r)?await l(t,s(r)):null;e(t,i??await n.engine.tree.loadRoot(n))}catch(n){let a=n instanceof Error?n.message:String(n);console.error(`Failed to load databases:`,n),r.getState().setFooterMessage(i.t(`schema.tree.loadDatabasesFailed`,{message:a})),e(t,[])}finally{F.delete(t)}}},[e]),d=(0,N.useCallback)(async(e,r)=>{if(!_.getState().trees[e])return;let i=I(e);if(i&&!r.isLeaf){a(e,r.id,!0);try{let a=await i.engine.tree.loadChildren(i,r);t(e,r.id,a),Promise.all(a.filter(e=>e.type===o.FOLDER&&e.metadata?.countable).map(async t=>{try{let r=await i.engine.tree.loadChildren(i,t);n(e,t.id,{count:r.length})}catch(e){console.error(`Failed to count ${t.text}:`,e)}}))}catch(t){console.error(`Failed to load children:`,t),a(e,r.id,!1)}}},[t,n,a]);return{loadDatabases:c,loadChildren:d,refreshNode:(0,N.useCallback)(async(e,t)=>{await d(e,t)},[d]),createNode:b,findNode:P,findAncestor:oe}}async function L(e,t){T(e,t);let n=_.getState().trees[e];if(!n||!t)return;let r=I(e);if(!r)return;let i=k(e,t),a=E(n,i[i.length-1]);!a||a.children.length===0||await Promise.all(a.children.filter(e=>e.type===o.FOLDER).map(async t=>{try{let n=await r.engine.tree.loadChildren(r,t),i=_.getState();(t.children.length>0||t.isExpanded)&&i.setChildren(e,t.id,n),t.metadata?.countable&&i.setNodeMetadata(e,t.id,{count:n.length})}catch(e){console.error(`Failed to refresh ${t.text}:`,e)}}))}async function ce(e){T(e);let t=I(e);t&&_.getState().setTree(e,await t.engine.tree.loadRoot(t))}var R=class extends Error{sql;constructor(e,t){super(e),this.name=`QueryError`,this.sql=t}},z=class extends Error{constructor(e=`Cancelled`){super(e),this.name=`ExecutionCancelled`}};function B(e){let t=e.fields??[],n=e.records??[];return{fields:t.map(e=>({name:e.name,type:e.type,orgTable:e.orgTable??e.table??``,orgName:e.orgName??e.name,db:e.db??``})),rows:n.map(e=>{let n={};return t.forEach((t,r)=>{n[t.name]=e[r]}),n}),affectedRows:e.affectedRows??0,insertId:e.insertId??0,message:e.message??(n.length>0?i.t(`services.query.rowsReturned`,{count:n.length}):i.t(`services.query.rowsAffected`,{count:e.affectedRows??0}))}}async function V(e,t,n,r=ee(t),i){let a=new Set(e.fields.map(e=>e.orgTable).filter(Boolean));if(a.size!==1)return e;let o=[...a][0];try{let a=i??await r.introspect.getPrimaryKeys(v(t),n,o);a.length>0&&(e.primaryKeys=a)}catch{}return!e.primaryKeys?.length&&e.fields.some(e=>e.name===`_rowid_`)&&(e.primaryKeys=[m]),e}var H=new Set([`SELECT`,`SHOW`,`EXPLAIN`,`DESCRIBE`,`DESC`,`HELP`,`VALUES`,`TABLE`,`WITH`,`USE`,`SET`,`CHECK`,`CHECKSUM`]);function U(e){return e.kind===`PRAGMA`?!e.sql.includes(`=`):!(!H.has(e.kind)||e.destructive||e.kind===`SELECT`&&C(e,`INTO`))}var W=new Set([`INSERT`,`UPDATE`,`DELETE`,`REPLACE`,`MERGE`,`LOAD`]),le=new Set([`CREATE`,`ALTER`,`DROP`,`TRUNCATE`,`RENAME`,`GRANT`,`REVOKE`,`FLUSH`,`LOCK`,`UNLOCK`]),ue=new Set([`CREATE`,`ALTER`,`DROP`,`RENAME`]);function de(e){return W.has(e.kind)||!!e.destructive?.dataLoss}function G(e,t,n=`limit`){if(t<=0||e.kind!==`SELECT`||e.limit!==null||C(e,`LIMIT`)||C(e,`INTO`)||C(e,`FOR`)||C(e,`LOCK`))return{sql:e.sql,limited:!1};if(n===`top`){if(C(e,`TOP`)||C(e,`OFFSET`))return{sql:e.sql,limited:!1};let n=re(e);return n===-1?{sql:e.sql,limited:!1}:{sql:`${e.sql.slice(0,n)} TOP ${t}${e.sql.slice(n)}`,limited:!0}}return n===`fetch`?C(e,`FETCH`)||/\bROWNUM\b/i.test(e.sql)?{sql:e.sql,limited:!1}:{sql:`${e.sql} FETCH FIRST ${t} ROWS ONLY`,limited:!0}:{sql:`${e.sql} LIMIT ${t}`,limited:!0}}function fe(e,t=0){let n=K();return n<=0?``:e.limitClause(n,t)}function K(){return p.getState().resultRowLimit}function pe(e){let t=e.destructive,n=t.names.length?t.names.join(`, `):i.t(`services.destructive.unknownTarget`);switch(t.action){case`DROP`:return`DROP ${t.objectType} ${n}`;case`TRUNCATE`:return`TRUNCATE ${n}`;case`DELETE_ALL`:return i.t(`services.destructive.deleteAll`,{target:n});case`UPDATE_ALL`:return i.t(`services.destructive.updateAll`,{target:n});case`ALTER_DROP`:return i.t(`services.destructive.alterDrop`,{target:n})}}async function me(e){if(!p.getState().confirmDestructive)return!0;let t=e.filter(e=>e.destructive?.dataLoss);return t.length===0||r.getState().requestDestructiveConfirm({title:i.t(`services.destructive.title`,{count:t.length}),description:i.t(`services.destructive.description`),statements:t.map(pe),confirmLabel:i.t(`services.runAnyway`)})}async function he(e,t){if(!e.readOnly)return;let n=t.filter(e=>!U(e));if(n.length===0)return;let a=`${e.hostName||e.host}`;if(!p.getState().allowReadOnlyOverride)throw new R(i.t(`services.readOnly.refused`,{label:a,count:n.length}));if(!await r.getState().requestDestructiveConfirm({title:i.t(`services.readOnly.title`,{label:a}),description:i.t(`services.readOnly.description`),statements:n.map(e=>e.sql.length>120?e.sql.slice(0,117)+`...`:e.sql),confirmLabel:i.t(`services.runAnyway`)}))throw new z(`Cancelled: connection is read-only.`)}function q(e,t){let n=f.getState(),r=n.activeConnections.find(t=>t.id===e);if(!r?.serverConnectionId)throw new R(i.t(`services.query.notConnected`));if(n.pendingReopen[e])throw new R(i.t(`services.query.fileNotOpen`));return{connId:e,serverConnId:r.serverConnectionId,conn:r,engine:x(e),tabId:t}}async function J(e,t,n){let r=new S(e.engine).statements(t);if(e.conn.scratchpad){let{materializeFederated:t}=await a(async()=>{let{materializeFederated:e}=await import(`./Bg6u9htc.js`).then(e=>e.B);return{materializeFederated:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));for(let n of r)n.sql=await t(e.connId,n.sql)}if(await he(e.conn,r),!n.skipDestructiveConfirm&&!await me(r))throw new z;return r}async function Y(e,n,a){let{connId:o,serverConnId:s,engine:c,tabId:l}=e,u=n.stmt?.kind??``,d=()=>f.getState();if(e.conn.transactionMode===`manual`&&c.capabilities.transactions&&n.stmt&&de(n.stmt)&&!d().transactionOpen[o]){let e=await y(s,c.getQuery(`START_TRANSACTION`),a||void 0);if(!e.success)throw new R(e.message??i.t(`services.transaction.startFailed`));d().setTransactionOpen(o,!0),r.getState().setFooterMessage(i.t(`services.transaction.started`))}let p=await y(s,n.sql,a||void 0);if(!p.success){let r=p.message??i.t(`services.query.failed`);throw g.getState().recordExecution({connectionId:o,tabId:l,query:n.sql,database:a,executionTime:p.execTime,error:r,kind:u||void 0}),t(`query_execute`,{dbms:e.conn.dbms,kind:u||`unknown`,source:l?`editor`:`app`,success:!1}),new R(r,n.sql)}let m=B(p);return u===`COMMIT`||u===`ROLLBACK`?d().setTransactionOpen(o,!1):u===`START`||u===`BEGIN`?d().setTransactionOpen(o,!0):le.has(u)&&d().transactionOpen[o]&&c.capabilities.implicitCommitDdl&&(d().setTransactionOpen(o,!1),r.getState().setFooterMessage(i.t(`services.transaction.implicitCommit`,{kind:u}))),ue.has(u)&&L(o,a),e.skipHistory||g.getState().recordExecution({connectionId:o,tabId:l,query:n.sql,database:a,executionTime:p.execTime,kind:u||void 0,...m.fields.length>0?{rowCount:m.rows.length}:{affectedRows:m.affectedRows}}),t(`query_execute`,{dbms:e.conn.dbms,kind:u||`unknown`,source:l?`editor`:`app`,success:!0,exec_time_ms:Math.round(p.execTime??0)}),{qr:m,execTime:p.execTime}}async function ge(e,t,n={}){let r=q(e,n.tabId??null);r.skipHistory=n.skipHistory;let a=t.trim();if(!a)throw new R(i.t(`services.query.nothingToExecute`));let o=await J(r,a,n),s=n.database??``;n.previewWrites&&p.getState().previewAffectedRows&&await Q(r,o,s);let c=o.length>0?o.map(e=>({sql:e.sql,stmt:e})):[{sql:a,stmt:null}],l=null;for(let e of c){let{qr:t}=await Y(r,e,s);n.primaryKeys&&t.fields.length>0&&s&&await V(t,r.serverConnId,s,r.engine,Array.isArray(n.primaryKeys)?n.primaryKeys:void 0),l=t}return l}function _e(e,t){return X(e,t)?.sql??null}function X(e,t){let n=g.getState().tabs[e]?.find(e=>e.id===t);if(!n)return null;let r=te(e,t);if(r&&`selection`in r)return{sql:r.selection,start:r.start};let i=r&&`cursorOffset`in r?r.cursorOffset:n.query.length,a=new S(x(e)).statements(n.query);if(a.length===0)return null;let o=a.find(e=>i>=w(e)&&i<=e.end)??[...a].reverse().find(e=>e.end<=i)??a[0];return{sql:o.sql,start:w(o)}}async function ve(e,n,r={}){let o=()=>g.getState(),s=o().tabs[e]?.find(e=>e.id===n);if(!s)return;let c=(r.sql??s.query)?.trim();if(!c)return;let l,u;try{l=q(e,n),u=await J(l,c,{})}catch(t){if(t instanceof z){t.message!==`Cancelled`&&o().setError(e,n,t.message);return}o().setError(e,n,t instanceof Error?t.message:String(t));return}let f=p.getState(),m=new Map;if(f.previewAffectedRows)try{m=await Q(l,u,s.database||``)}catch(e){if(e instanceof z)return;throw e}let h=m.size===1,_=u.length>0?u.map(e=>({...G(e,f.resultRowLimit,l.engine.syntax.limitStyle),stmt:e})):[{sql:c,limited:!1,stmt:null}],v=r.sql?r.sqlOffset??null:0;a(async()=>{let{readStructures:e}=await import(`./Bg6u9htc.js`).then(e=>e.tt);return{readStructures:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])).then(({readStructures:t})=>t(e,n,u.length>0?u.map(e=>({sql:e.sql,start:v===null?null:v+w(e)})):[{sql:c,start:v}])),o().captureRevision(e,n,`execute`),o().setExecuting(e,n,!0),o().setError(e,n,null);let y=[],b=s.database||``;try{for(let r of _){let{qr:a,execTime:s}=await Y(l,r,b);if(a.sql=r.stmt?.sql??r.sql,a.executionTime=s,r.limited&&a.rows.length>=f.resultRowLimit&&(a.limited=!0,a.message=i.t(`services.query.rowsReturnedLimited`,{count:a.rows.length,limit:f.resultRowLimit})),!b&&a.fields.length>0){let t=a.fields.find(e=>e.db)?.db;t&&(b=t,o().setDatabase(e,n,b),M(e,b))}a.fields.length>0&&b&&await V(a,l.serverConnId,b,l.engine);let c=h&&r.stmt?m.get(r.stmt):void 0;c!==void 0&&Number.isFinite(a.affectedRows)&&a.affectedRows!==c&&(a.warning=i.t(`services.query.dryRunMismatch`,{predicted:c,actual:a.affectedRows}),t(`dry_run_mismatch`,{dbms:l.conn.dbms,kind:r.stmt?.kind??`unknown`})),y.push(a)}o().setResults(e,n,y)}catch(t){y.length>0&&o().setResults(e,n,y),o().setError(e,n,t instanceof Error?t.message:String(t),t instanceof R?t.sql:null),t instanceof R&&d(`query_error`)}finally{o().setExecuting(e,n,!1)}}var Z=50;function ye(e,t,n){return e.syntax.limitStyle===`top`?t.replace(/^SELECT\b/i,`SELECT TOP ${n}`):`${t} ${e.limitClause(n)}`}async function Q(e,t,n){let i=new Map;for(let a of t){if(a.kind!==`UPDATE`&&a.kind!==`DELETE`)continue;let t=ne(a);if(!t)continue;let o=null,s=[],c=[],l,u=await y(e.serverConnId,t.count,n||void 0);if(u.success){let r=Number(u.records[0]?.[0]);o=Number.isFinite(r)?r:null;let i=await y(e.serverConnId,t.limited?t.select:ye(e.engine,t.select,Z),n||void 0);i.success?(s=i.fields.map(e=>e.name),c=i.records):l=i.message}else l=u.message;if(!await r.getState().requestDryRun({statement:a.sql,previewSql:t.select,count:o,fields:s,rows:c,truncated:o!==null&&c.length<o,error:l}))throw new z;o!==null&&i.set(a,o)}return i}async function $(e,t){let n=f.getState(),a=n.activeConnections.find(t=>t.id===e);if(!a?.serverConnectionId)return;let o=x(e);try{let e=await y(a.serverConnectionId,o.getQuery(t));if(!e.success)throw new R(e.message??i.t(`services.transaction.commandFailed`,{name:t}));r.getState().setFooterMessage(t===`COMMIT`?i.t(`services.transaction.committed`):i.t(`services.transaction.rolledBack`))}catch(e){r.getState().setFooterMessage(i.t(`services.transaction.commandFailedWith`,{name:t,message:e instanceof Error?e.message:String(e)}))}finally{n.setTransactionOpen(e,!1)}}var be=e=>$(e,`COMMIT`),xe=e=>$(e,`ROLLBACK`);export{ae as _,ve as a,xe as c,K as d,fe as f,M as g,se as h,be as i,ge as l,ce as m,R as n,_e as o,L as p,G as r,U as s,z as t,X as u,ie as v};