planche 0.9.2 → 0.9.4

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 (82) hide show
  1. package/app/assets/{B4S-lOKS.js → 2HDxyxt3.js} +1 -1
  2. package/app/assets/{W7D4Svcn.js → 2WcjYcT6.js} +1 -1
  3. package/app/assets/{G06qjCej.js → 34iJa-68.js} +1 -1
  4. package/app/assets/{CFUkTo-F.js → 62772Vyq.js} +1 -1
  5. package/app/assets/{XCH_yrJ8.js → 7hKKrols.js} +1 -1
  6. package/app/assets/92hmrkfN.css +2 -0
  7. package/app/assets/{CTnwm-29.js → AR0v7sKO.js} +1 -1
  8. package/app/assets/B5FoXN4H.js +1 -0
  9. package/app/assets/{DCHRj2vY.js → BB2_KYgp.js} +1 -1
  10. package/app/assets/{Bbx7_Uyd.js → BHsv1P4D.js} +1 -1
  11. package/app/assets/{D3lUezEb.js → BI5Ig187.js} +1 -1
  12. package/app/assets/{ByKF67UY.js → BRKvj3qd.js} +1 -1
  13. package/app/assets/{CFu5QMhX.js → BTpuv2bS.js} +1 -1
  14. package/app/assets/{BkXrfAoR.js → BVZGLNq_.js} +1 -1
  15. package/app/assets/{Djxg54qH.js → BWPrOT1U.js} +1 -1
  16. package/app/assets/{84VwJAQi.js → BaTnCkNR.js} +1 -1
  17. package/app/assets/{7jG9Xw-H.js → BdhjYiGI.js} +1 -1
  18. package/app/assets/{D8_hwGjG.js → BihjBM79.js} +1 -1
  19. package/app/assets/{BrVnzO7b.js → Bjx1jzlk.js} +1 -1
  20. package/app/assets/{7jD5h8Yx.js → BkujllIu.js} +1 -1
  21. package/app/assets/{BPPUDpI0.js → BtBUwOf0.js} +1 -1
  22. package/app/assets/{B9dhM8vw.js → Buf-_p3w.js} +1 -1
  23. package/app/assets/{CrlnxAGW.js → BvkNY7SP.js} +1 -1
  24. package/app/assets/{BGvsBpIS.js → C-8Bh-gu.js} +1 -1
  25. package/app/assets/{BMFLhX-x.js → C1JbR1mO.js} +1 -1
  26. package/app/assets/{DPyLA6Dl.js → C3AWL5gC.js} +1 -1
  27. package/app/assets/{BQ1Rcyw6.js → C3aiaYZP.js} +1 -1
  28. package/app/assets/{Cu_sGzNJ.js → C76CctEl.js} +1 -1
  29. package/app/assets/{DHZOxCSJ.js → C82F2LSh.js} +1 -1
  30. package/app/assets/{CoZCOAph.js → CCJEQIo6.js} +1 -1
  31. package/app/assets/{DzdX4vRD.js → CDfygETm.js} +1 -1
  32. package/app/assets/{BixvbqFe.js → CGpFMM6B.js} +1 -1
  33. package/app/assets/{BRZhVXRC.js → CH4cEkW4.js} +1 -1
  34. package/app/assets/{D9QeXBOk.js → CKUISE0C.js} +1 -1
  35. package/app/assets/{BNB62Dfu.js → CN1CF2CU.js} +1 -1
  36. package/app/assets/{D0Ya12SQ.js → CRYDH2ct.js} +1 -1
  37. package/app/assets/{BnJGrP6V.js → CZRhmV_L.js} +2 -2
  38. package/app/assets/{C1gqjEN3.js → C_qmv4pB.js} +1 -1
  39. package/app/assets/{CgQ0qqq4.js → CcaDuuFY.js} +1 -1
  40. package/app/assets/{D1kyupCL.js → Cm-pfCIP.js} +1 -1
  41. package/app/assets/{BDtsGuIR.js → Cme0nCT7.js} +2 -2
  42. package/app/assets/{BhX9zWzC.js → CoUCmmSB.js} +1 -1
  43. package/app/assets/{B7zF7RU4.js → CtsakJNi.js} +1 -1
  44. package/app/assets/{DNHPk-9r.js → Cw4TnfXm.js} +1 -1
  45. package/app/assets/{BYvM8E39.js → CxaujQob.js} +1 -1
  46. package/app/assets/{CYz610vE.js → CyX8oVsa.js} +1 -1
  47. package/app/assets/{CRnmOOqq.js → D-DAzfgs.js} +1 -1
  48. package/app/assets/{BPmMKRmE.js → D3VPMNTU.js} +1 -1
  49. package/app/assets/{CExE8dKz.js → D4DxtYTA.js} +185 -184
  50. package/app/assets/{C6712dxU.js → D4c1cZWk.js} +1 -1
  51. package/app/assets/{C1kpKIsO.js → DG0u2CPf.js} +1 -1
  52. package/app/assets/{CHx7zgT8.js → DKObYbZY.js} +1 -1
  53. package/app/assets/{DU-Eln5x.js → DOy06rIE.js} +1 -1
  54. package/app/assets/{aIFwnVFr.js → DPKD37gk.js} +1 -1
  55. package/app/assets/{DpEN2jyA.js → DT8Xdk78.js} +1 -1
  56. package/app/assets/{Do7KpDxk.js → DXExbVos.js} +1 -1
  57. package/app/assets/{BSziALTN.js → DXQPcWS6.js} +1 -1
  58. package/app/assets/{kXDKfUfE.js → DjsycSVl.js} +1 -1
  59. package/app/assets/{CiL8zoYm.js → Dya0zxo6.js} +1 -1
  60. package/app/assets/{DTkqO0Em.js → IqMoIce-.js} +1 -1
  61. package/app/assets/{CrhJJH3f.js → MeOkctzz.js} +1 -1
  62. package/app/assets/{DF7EZh_S.js → NL8WOYEo.js} +1 -1
  63. package/app/assets/{D8dVzi6I.js → Ngd1VEiY.js} +1 -1
  64. package/app/assets/UEkRIZwQ.js +1 -0
  65. package/app/assets/{BGuDcBB_.js → UJzcIbfW.js} +1 -1
  66. package/app/assets/{C77ZEZfM.js → W81Xd8P5.js} +1 -1
  67. package/app/assets/{DaBfnZOJ.js → Yn5aIyLX.js} +1 -1
  68. package/app/assets/{BMBWoD5w.js → _N3A-NTc.js} +1 -1
  69. package/app/assets/{qRIRkBN0.js → gvCOWBS0.js} +1 -1
  70. package/app/assets/{S7HbowYz.js → iz6RnRcO.js} +71 -71
  71. package/app/assets/{DzRyVlxz.js → kTwcxyaO.js} +1 -1
  72. package/app/assets/{tJkeLYCp.js → oXAkF219.js} +1 -1
  73. package/app/assets/{BTaXXwBP.js → pDR31rvF.js} +1 -1
  74. package/app/assets/{BEH9Jqkv.js → u9a-WHjb.js} +1 -1
  75. package/app/assets/{BbOETtQZ.js → yLCKuLgs.js} +1 -1
  76. package/app/assets/{CaU3pCK6.js → yfRSh-O-.js} +1 -1
  77. package/app/assets/{BjwrN_ch.js → zdvaVsTo.js} +1 -1
  78. package/app/index.html +20 -20
  79. package/package.json +1 -1
  80. package/app/assets/9gOj-Ty3.js +0 -1
  81. package/app/assets/BFw3KCAr.js +0 -1
  82. package/app/assets/w46wk7KI.css +0 -2
@@ -1,4 +1,4 @@
1
- import{r as e}from"./hePW80VL.js";import{p as t}from"./CYz610vE.js";import{a as n,d as r,i,o as a,s as o,t as s,u as c}from"./CiL8zoYm.js";import{r as l,t as u}from"./Cu_sGzNJ.js";var d=e(t(),1),f=l(),p=Object.defineProperty,m=(e,t)=>p(e,`name`,{value:t,configurable:!0});function h(e,t){let n=d.createContext(t);n.displayName=e+`Context`;let r=m(e=>{let{children:t,...r}=e,i=d.useMemo(()=>r,Object.values(r));return(0,f.jsx)(n.Provider,{value:i,children:t})},`Provider`);r.displayName=e+`Provider`;function i(r,i={}){let{optional:a=!1}=i,o=d.useContext(n);if(o)return o;if(t!==void 0)return t;if(!a)throw Error(`\`${r}\` must be used within \`${e}\``)}return m(i,`useContext`),[r,i]}m(h,`createContext`);function g(e,t=[]){let n=[];function r(t,r){let i=d.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=m(t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=d.useMemo(()=>o,Object.values(o));return(0,f.jsx)(s.Provider,{value:c,children:r})},`Provider`);o.displayName=t+`Provider`;function s(n,o,s={}){let{optional:c=!1}=s,l=o?.[e]?.[a]||i,u=d.useContext(l);if(u)return u;if(r!==void 0)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return m(s,`useContext`),[o,s]}m(r,`createContext`);let i=m(()=>{let t=n.map(e=>d.createContext(e));return m(function(n){let r=n?.[e]||t;return d.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])},`useScope`)},`createScope`);return i.scopeName=e,[r,_(i,...t)]}m(g,`createContextScope`);function _(...e){let t=e[0];if(e.length===1)return t;let n=m(()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return m(function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return d.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])},`useComposedScopes`)},`createScope`);return n.scopeName=t.scopeName,n}m(_,`composeContextScopes`);var v=Object.defineProperty,y=(e,t)=>v(e,`name`,{value:t,configurable:!0}),b=!!(typeof window<`u`&&window.document&&window.document.createElement);function x(e,t,{checkForDefaultPrevented:n=!0}={}){return y(function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)},`handleEvent`)}y(x,`composeEventHandlers`);function ee(e){if(!b)throw Error(`Cannot access window outside of the DOM`);return e?.ownerDocument?.defaultView??window}y(ee,`getOwnerWindow`);function S(e){if(!b)throw Error(`Cannot access document outside of the DOM`);return e?.ownerDocument??document}y(S,`getOwnerDocument`);function C(e,t=!1){let{activeElement:n}=S(e);if(!n?.nodeName)return null;if(te(n)&&n.contentDocument)return C(n.contentDocument.body,t);if(t){let e=n.getAttribute(`aria-activedescendant`);if(e){let t=S(n).getElementById(e);if(t)return t}}return n}y(C,`getActiveElement`);function te(e){return e.tagName===`IFRAME`}y(te,`isFrame`);var w=globalThis?.document?d.useLayoutEffect:()=>{},ne=Object.defineProperty,re=(e,t)=>ne(e,`name`,{value:t,configurable:!0}),T=d.useEffectEvent,E=d.useInsertionEffect;function D(e){if(typeof T==`function`)return T(e);let t=d.useRef(()=>{throw Error(`Cannot call an event handler while rendering.`)});return typeof E==`function`?E(()=>{t.current=e}):w(()=>{t.current=e}),d.useMemo(()=>((...e)=>t.current?.(...e)),[])}re(D,`useEffectEvent`);var ie=Object.defineProperty,O=(e,t)=>ie(e,`name`,{value:t,configurable:!0}),ae=d.useInsertionEffect||w;function oe({prop:e,defaultProp:t,onChange:n=O(()=>{},`onChange`),caller:r}){let[i,a,o]=se({defaultProp:t,onChange:n}),s=e!==void 0;return[s?e:i,d.useCallback(t=>{if(s){let n=ce(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}O(oe,`useControllableState`);function se({defaultProp:e,onChange:t}){let[n,r]=d.useState(e),i=d.useRef(n),a=d.useRef(t);return ae(()=>{a.current=t},[t]),d.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}O(se,`useUncontrolledState`);function ce(e){return typeof e==`function`}O(ce,`isFunction`);var le=Symbol(`RADIX:SYNC_STATE`);function ue(e,t,n,r){let{prop:i,defaultProp:a,onChange:o,caller:s}=t,c=i!==void 0,l=D(o),u=[{...n,state:a}];r&&u.push(r);let[f,p]=d.useReducer((t,n)=>{if(n.type===le)return{...t,state:n.state};let r=e(t,n);return c&&!Object.is(r.state,t.state)&&l(r.state),r},...u),m=f.state,h=d.useRef(m);d.useEffect(()=>{h.current!==m&&(h.current=m,c||l(m))},[m,h,c]);let g=d.useMemo(()=>i===void 0?f:{...f,state:i},[f,i]);return d.useEffect(()=>{c&&!Object.is(i,f.state)&&p({type:le,state:i})},[i,f.state,c]),[g,p]}O(ue,`useControllableStateReducer`);var de=e(r(),1),fe=Object.defineProperty,k=(e,t)=>fe(e,`name`,{value:t,configurable:!0});function pe(e,t){return d.useReducer((e,n)=>t[e][n]??e,e)}k(pe,`useStateMachine`);var A=k(e=>{let{present:t,children:n}=e,r=me(t),i=typeof n==`function`?n({present:r.isPresent}):d.Children.only(n),a=ge(r.ref,_e(i));return typeof n==`function`||r.isPresent?d.cloneElement(i,{ref:a}):null},`Presence`);function me(e){let[t,n]=d.useState(),r=d.useRef(null),i=d.useRef(e),a=d.useRef(`none`),o=d.useRef(void 0),[s,c]=pe(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return d.useEffect(()=>{s===`mounted`?(a.current=o.current??j(r.current),o.current=void 0):a.current=`none`},[s]),w(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,s=j(t);e?(o.current=s,c(`MOUNT`)):s===`none`||t?.display===`none`?c(`UNMOUNT`):c(n&&r!==s?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,c]),w(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=k(a=>{let o=j(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(c(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},`handleAnimationEnd`),s=k(e=>{e.target===t&&(a.current=j(r.current))},`handleAnimationStart`);return t.addEventListener(`animationstart`,s),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,s),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}c(`ANIMATION_END`)},[t,c]),{isPresent:[`mounted`,`unmountSuspended`].includes(s),ref:d.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,o.current=j(t)}else r.current=null;n(e)},[])}}k(me,`usePresence`);function he(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}k(he,`setRef`);function ge(...e){let t=d.useRef(e);return t.current=e,d.useCallback(e=>{let n=t.current,r=!1,i=n.map(t=>{let n=he(t,e);return!r&&typeof n==`function`&&(r=!0),n});if(r)return()=>{for(let e=0;e<i.length;e++){let t=i[e];typeof t==`function`?t():he(n[e],null)}}},[])}k(ge,`useStableComposedRefs`);function j(e){return e?.animationName||`none`}k(j,`getAnimationName`);function _e(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}k(_e,`getElementRef`);var ve=Object.defineProperty,ye=(e,t)=>ve(e,`name`,{value:t,configurable:!0}),be=d.useId||(()=>void 0),xe=0;function M(e){let[t,n]=d.useState(be());return w(()=>{e||n(e=>e??String(xe++))},[e]),e||(t?`radix-${t}`:``)}ye(M,`useId`);var Se=Object.defineProperty,Ce=(e,t)=>Se(e,`name`,{value:t,configurable:!0});function N(e){let t=d.useRef(e);return d.useEffect(()=>{t.current=e}),d.useMemo(()=>((...e)=>t.current?.(...e)),[])}Ce(N,`useCallbackRef`);var we=Object.defineProperty,P=(e,t)=>we(e,`name`,{value:t,configurable:!0}),Te=`dismissableLayer.update`,Ee=`dismissableLayer.pointerDownOutside`,De=`dismissableLayer.focusOutside`,Oe,ke=d.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Ae=d.forwardRef(P(function(e,t){let{disableOutsidePointerEvents:r=!1,deferPointerDownOutside:i=!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:s,onInteractOutside:l,onDismiss:u,...p}=e,m=d.useContext(ke),[h,g]=d.useState(null),_=h?.ownerDocument??globalThis?.document,[,v]=d.useState({}),y=c(t,g),b=Array.from(m.layers),[ee]=[...m.layersWithOutsidePointerEventsDisabled].slice(-1),S=ee?b.indexOf(ee):-1,C=h?b.indexOf(h):-1,te=m.layersWithOutsidePointerEventsDisabled.size>0,w=C>=S,ne=d.useRef(!1),re=Ne(e=>{o?.(e),l?.(e),e.defaultPrevented||u?.()},{ownerDocument:_,deferPointerDownOutside:i,isDeferredPointerDownOutsideRef:ne,dismissableSurfaces:m.dismissableSurfaces,shouldHandlePointerDownOutside:d.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...m.branches].some(t=>t.contains(e));return w&&!t},[m.branches,w])}),T=Pe(e=>{if(i&&ne.current)return;let t=e.target;[...m.branches].some(e=>e.contains(t))||(s?.(e),l?.(e),e.defaultPrevented||u?.())},_),E=h?C===b.length-1:!1,D=N(e=>{e.key===`Escape`&&(a?.(e),!e.defaultPrevented&&u&&(e.preventDefault(),u()))});return d.useEffect(()=>{if(E)return _.addEventListener(`keydown`,D,{capture:!0}),()=>_.removeEventListener(`keydown`,D,{capture:!0})},[_,E,D]),d.useEffect(()=>{if(h)return r&&(m.layersWithOutsidePointerEventsDisabled.size===0&&(Oe=_.body.style.pointerEvents,_.body.style.pointerEvents=`none`),m.layersWithOutsidePointerEventsDisabled.add(h)),m.layers.add(h),Fe(),()=>{r&&(m.layersWithOutsidePointerEventsDisabled.delete(h),m.layersWithOutsidePointerEventsDisabled.size===0&&(_.body.style.pointerEvents=Oe))}},[h,_,r,m]),d.useEffect(()=>()=>{h&&(m.layers.delete(h),m.layersWithOutsidePointerEventsDisabled.delete(h),Fe())},[h,m]),d.useEffect(()=>{let e=P(()=>v({}),`handleUpdate`);return document.addEventListener(Te,e),()=>document.removeEventListener(Te,e)},[]),(0,f.jsx)(n.div,{...p,ref:y,style:{pointerEvents:te?w?`auto`:`none`:void 0,...e.style},onFocusCapture:x(e.onFocusCapture,T.onFocusCapture),onBlurCapture:x(e.onBlurCapture,T.onBlurCapture),onPointerDownCapture:x(e.onPointerDownCapture,re.onPointerDownCapture)})},`DismissableLayer`));function je(){let e=d.useContext(ke),[t,n]=d.useState(null);return d.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}P(je,`useDismissableLayerSurface`);var Me=P(()=>!0,`IS_TRUE`);function Ne(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:i,dismissableSurfaces:a,shouldHandlePointerDownOutside:o=Me}=t,s=N(e),c=d.useRef(!1),l=d.useRef(!1),u=d.useRef(new Map),f=d.useRef(()=>{});return d.useEffect(()=>{function e(){l.current=!1,i.current=!1,u.current.clear()}P(e,`resetOutsideInteraction`);function t(){return Array.from(u.current.values()).some(Boolean)}P(t,`isOutsideInteractionIntercepted`);function d(e){if(!l.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||u.current.set(e.type,!0),e.type===`click`&&window.setTimeout(()=>{l.current&&f.current()},0)}P(d,`handleInteractionCapture`);function p(e){l.current&&u.current.set(e.type,!1)}P(p,`handleInteractionBubble`);let m=P(a=>{if(a.target&&!c.current){let d=function(){n.removeEventListener(`click`,f.current);let r=t();e(),r||Ie(Ee,s,p,{discrete:!0})};if(P(d,`handleAndDispatchPointerDownOutsideEvent`),!o(a.target)){n.removeEventListener(`click`,f.current),e(),c.current=!1;return}let p={originalEvent:a};l.current=!0,i.current=r&&a.button===0,u.current.clear(),!r||a.button!==0?d():(n.removeEventListener(`click`,f.current),f.current=d,n.addEventListener(`click`,f.current,{once:!0}))}else n.removeEventListener(`click`,f.current),e();c.current=!1},`handlePointerDown`),h=[`pointerup`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`];for(let e of h)n.addEventListener(e,d,!0),n.addEventListener(e,p);let g=window.setTimeout(()=>{n.addEventListener(`pointerdown`,m)},0);return()=>{window.clearTimeout(g),n.removeEventListener(`pointerdown`,m),n.removeEventListener(`click`,f.current);for(let e of h)n.removeEventListener(e,d,!0),n.removeEventListener(e,p)}},[n,s,r,i,a,o]),{onPointerDownCapture:P(()=>c.current=!0,`onPointerDownCapture`)}}P(Ne,`usePointerDownOutside`);function Pe(e,t=globalThis?.document){let n=N(e),r=d.useRef(!1);return d.useEffect(()=>{let e=P(e=>{e.target&&!r.current&&Ie(De,n,{originalEvent:e},{discrete:!1})},`handleFocus`);return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:P(()=>r.current=!0,`onFocusCapture`),onBlurCapture:P(()=>r.current=!1,`onBlurCapture`)}}P(Pe,`useFocusOutside`);function Fe(){let e=new CustomEvent(Te);document.dispatchEvent(e)}P(Fe,`dispatchUpdate`);function Ie(e,t,n,{discrete:r}){let i=n.originalEvent.target,o=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?a(i,o):i.dispatchEvent(o)}P(Ie,`handleAndDispatchCustomEvent`);var Le=Object.defineProperty,F=(e,t)=>Le(e,`name`,{value:t,configurable:!0}),Re=`focusScope.autoFocusOnMount`,ze=`focusScope.autoFocusOnUnmount`,Be={bubbles:!1,cancelable:!0},Ve=d.forwardRef(F(function(e,t){let{loop:r=!1,trapped:i=!1,onMountAutoFocus:a,onUnmountAutoFocus:o,...s}=e,[l,u]=d.useState(null),p=N(a),m=N(o),h=d.useRef(null),g=c(t,u),_=d.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;d.useEffect(()=>{if(i){let e=function(e){if(_.paused||!l)return;let t=e.target;l.contains(t)?h.current=t:I(h.current,{select:!0})},t=function(e){if(_.paused||!l)return;let t=e.relatedTarget;t!==null&&(l.contains(t)||I(h.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&I(l)};F(e,`handleFocusIn`),F(t,`handleFocusOut`),F(n,`handleMutations`),document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return l&&r.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[i,l,_.paused]),d.useEffect(()=>{if(l){Je.add(_);let e=document.activeElement;if(!l.contains(e)){let t=new CustomEvent(Re,Be);l.addEventListener(Re,p),l.dispatchEvent(t),t.defaultPrevented||(He(Ze(We(l)),{select:!0}),document.activeElement===e&&I(l))}return()=>{l.removeEventListener(Re,p),setTimeout(()=>{let t=new CustomEvent(ze,Be);l.addEventListener(ze,m),l.dispatchEvent(t),t.defaultPrevented||I(e??document.body,{select:!0}),l.removeEventListener(ze,m),Je.remove(_)},0)}}},[l,p,m,_]);let v=d.useCallback(e=>{if(!r&&!i||_.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,n=document.activeElement;if(t&&n){let t=e.currentTarget,[i,a]=Ue(t);i&&a?!e.shiftKey&&n===a?(e.preventDefault(),r&&I(i,{select:!0})):e.shiftKey&&n===i&&(e.preventDefault(),r&&I(a,{select:!0})):n===t&&e.preventDefault()}},[r,i,_.paused]);return(0,f.jsx)(n.div,{tabIndex:-1,...s,ref:g,onKeyDown:v})},`FocusScope`));function He(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(I(r,{select:t}),document.activeElement!==n)return}F(He,`focusFirst`);function Ue(e){let t=We(e);return[Ge(t,e),Ge(t.reverse(),e)]}F(Ue,`getTabbableEdges`);function We(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:F(e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},`acceptNode`)});for(;n.nextNode();)t.push(n.currentNode);return t}F(We,`getTabbableCandidates`);function Ge(e,t){let n=typeof t.checkVisibility==`function`&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):Ke(r,{upTo:t})))return r}F(Ge,`findVisible`);function Ke(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}F(Ke,`isHidden`);function qe(e){return e instanceof HTMLInputElement&&`select`in e}F(qe,`isSelectableInput`);function I(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&qe(e)&&t&&e.select()}}F(I,`focus`);var Je=Ye();function Ye(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=Xe(e,t),e.unshift(t)},remove(t){e=Xe(e,t),e[0]?.resume()}}}F(Ye,`createFocusScopesStack`);function Xe(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}F(Xe,`arrayRemove`);function Ze(e){return e.filter(e=>e.tagName!==`A`)}F(Ze,`removeLinks`);var Qe=Object.defineProperty,$e=d.forwardRef(((e,t)=>Qe(e,`name`,{value:t,configurable:!0}))(function(e,t){let{container:r,...i}=e,[a,o]=d.useState(!1);w(()=>o(!0),[]);let s=r||a&&globalThis?.document?.body;return s?de.createPortal((0,f.jsx)(n.div,{...i,ref:t}),s):null},`Portal`)),et=Object.defineProperty,tt=(e,t)=>et(e,`name`,{value:t,configurable:!0}),L=0,R=null;function nt(e){return z(),e.children}tt(nt,`FocusGuards`);function z(){d.useEffect(()=>{R||={start:rt(),end:rt()};let{start:e,end:t}=R;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),L++,()=>{L===1&&(R?.start.remove(),R?.end.remove(),R=null),L=Math.max(0,L-1)}},[])}tt(z,`useFocusGuards`);function rt(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}tt(rt,`createFocusGuard`);var B=function(){return B=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},B.apply(this,arguments)};function it(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function at(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var V=`right-scroll-bar-position`,H=`width-before-scroll-bar`,ot=`with-scroll-bars-hidden`,st=`--removed-body-scroll-bar-size`;function ct(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function lt(e,t){var n=(0,d.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var ut=typeof window<`u`?d.useLayoutEffect:d.useEffect,dt=new WeakMap;function ft(e,t){var n=lt(t||null,function(t){return e.forEach(function(e){return ct(e,t)})});return ut(function(){var t=dt.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||ct(e,null)}),i.forEach(function(e){r.has(e)||ct(e,a)})}dt.set(n,e)},[e]),n}function pt(e){return e}function mt(e,t){t===void 0&&(t=pt);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function ht(e){e===void 0&&(e={});var t=mt(null);return t.options=B({async:!0,ssr:!1},e),t}var gt=function(e){var t=e.sideCar,n=it(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return d.createElement(r,B({},n))};gt.isSideCarExport=!0;function _t(e,t){return e.useMedium(t),gt}var vt=ht(),yt=function(){},U=d.forwardRef(function(e,t){var n=d.useRef(null),r=d.useState({onScrollCapture:yt,onWheelCapture:yt,onTouchMoveCapture:yt}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,c=e.className,l=e.removeScrollBar,u=e.enabled,f=e.shards,p=e.sideCar,m=e.noRelative,h=e.noIsolation,g=e.inert,_=e.allowPinchZoom,v=e.as,y=v===void 0?`div`:v,b=e.gapMode,x=it(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),ee=p,S=ft([n,t]),C=B(B({},x),i);return d.createElement(d.Fragment,null,u&&d.createElement(ee,{sideCar:vt,removeScrollBar:l,shards:f,noRelative:m,noIsolation:h,inert:g,setCallbacks:a,allowPinchZoom:!!_,lockRef:n,gapMode:b}),o?d.cloneElement(d.Children.only(s),B(B({},C),{ref:S})):d.createElement(y,B({},C,{className:c,ref:S}),s))});U.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},U.classNames={fullWidth:H,zeroRight:V};var bt=function(){if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function xt(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=bt();return t&&e.setAttribute(`nonce`,t),e}function St(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function Ct(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var wt=function(){var e=0,t=null;return{add:function(n){e==0&&(t=xt())&&(St(t,n),Ct(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},Tt=function(){var e=wt();return function(t,n){d.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},Et=function(){var e=Tt();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},Dt={left:0,top:0,right:0,gap:0},Ot=function(e){return parseInt(e||``,10)||0},kt=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[Ot(n),Ot(r),Ot(i)]},At=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return Dt;var t=kt(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},jt=Et(),W=`data-scroll-locked`,Mt=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
1
+ import{r as e}from"./hePW80VL.js";import{p as t}from"./CyX8oVsa.js";import{a as n,d as r,i,o as a,s as o,t as s,u as c}from"./Dya0zxo6.js";import{r as l,t as u}from"./C76CctEl.js";var d=e(t(),1),f=l(),p=Object.defineProperty,m=(e,t)=>p(e,`name`,{value:t,configurable:!0});function h(e,t){let n=d.createContext(t);n.displayName=e+`Context`;let r=m(e=>{let{children:t,...r}=e,i=d.useMemo(()=>r,Object.values(r));return(0,f.jsx)(n.Provider,{value:i,children:t})},`Provider`);r.displayName=e+`Provider`;function i(r,i={}){let{optional:a=!1}=i,o=d.useContext(n);if(o)return o;if(t!==void 0)return t;if(!a)throw Error(`\`${r}\` must be used within \`${e}\``)}return m(i,`useContext`),[r,i]}m(h,`createContext`);function g(e,t=[]){let n=[];function r(t,r){let i=d.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=m(t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=d.useMemo(()=>o,Object.values(o));return(0,f.jsx)(s.Provider,{value:c,children:r})},`Provider`);o.displayName=t+`Provider`;function s(n,o,s={}){let{optional:c=!1}=s,l=o?.[e]?.[a]||i,u=d.useContext(l);if(u)return u;if(r!==void 0)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return m(s,`useContext`),[o,s]}m(r,`createContext`);let i=m(()=>{let t=n.map(e=>d.createContext(e));return m(function(n){let r=n?.[e]||t;return d.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])},`useScope`)},`createScope`);return i.scopeName=e,[r,_(i,...t)]}m(g,`createContextScope`);function _(...e){let t=e[0];if(e.length===1)return t;let n=m(()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return m(function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return d.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])},`useComposedScopes`)},`createScope`);return n.scopeName=t.scopeName,n}m(_,`composeContextScopes`);var v=Object.defineProperty,y=(e,t)=>v(e,`name`,{value:t,configurable:!0}),b=!!(typeof window<`u`&&window.document&&window.document.createElement);function x(e,t,{checkForDefaultPrevented:n=!0}={}){return y(function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)},`handleEvent`)}y(x,`composeEventHandlers`);function ee(e){if(!b)throw Error(`Cannot access window outside of the DOM`);return e?.ownerDocument?.defaultView??window}y(ee,`getOwnerWindow`);function S(e){if(!b)throw Error(`Cannot access document outside of the DOM`);return e?.ownerDocument??document}y(S,`getOwnerDocument`);function C(e,t=!1){let{activeElement:n}=S(e);if(!n?.nodeName)return null;if(te(n)&&n.contentDocument)return C(n.contentDocument.body,t);if(t){let e=n.getAttribute(`aria-activedescendant`);if(e){let t=S(n).getElementById(e);if(t)return t}}return n}y(C,`getActiveElement`);function te(e){return e.tagName===`IFRAME`}y(te,`isFrame`);var w=globalThis?.document?d.useLayoutEffect:()=>{},ne=Object.defineProperty,re=(e,t)=>ne(e,`name`,{value:t,configurable:!0}),T=d.useEffectEvent,E=d.useInsertionEffect;function D(e){if(typeof T==`function`)return T(e);let t=d.useRef(()=>{throw Error(`Cannot call an event handler while rendering.`)});return typeof E==`function`?E(()=>{t.current=e}):w(()=>{t.current=e}),d.useMemo(()=>((...e)=>t.current?.(...e)),[])}re(D,`useEffectEvent`);var ie=Object.defineProperty,O=(e,t)=>ie(e,`name`,{value:t,configurable:!0}),ae=d.useInsertionEffect||w;function oe({prop:e,defaultProp:t,onChange:n=O(()=>{},`onChange`),caller:r}){let[i,a,o]=se({defaultProp:t,onChange:n}),s=e!==void 0;return[s?e:i,d.useCallback(t=>{if(s){let n=ce(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}O(oe,`useControllableState`);function se({defaultProp:e,onChange:t}){let[n,r]=d.useState(e),i=d.useRef(n),a=d.useRef(t);return ae(()=>{a.current=t},[t]),d.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}O(se,`useUncontrolledState`);function ce(e){return typeof e==`function`}O(ce,`isFunction`);var le=Symbol(`RADIX:SYNC_STATE`);function ue(e,t,n,r){let{prop:i,defaultProp:a,onChange:o,caller:s}=t,c=i!==void 0,l=D(o),u=[{...n,state:a}];r&&u.push(r);let[f,p]=d.useReducer((t,n)=>{if(n.type===le)return{...t,state:n.state};let r=e(t,n);return c&&!Object.is(r.state,t.state)&&l(r.state),r},...u),m=f.state,h=d.useRef(m);d.useEffect(()=>{h.current!==m&&(h.current=m,c||l(m))},[m,h,c]);let g=d.useMemo(()=>i===void 0?f:{...f,state:i},[f,i]);return d.useEffect(()=>{c&&!Object.is(i,f.state)&&p({type:le,state:i})},[i,f.state,c]),[g,p]}O(ue,`useControllableStateReducer`);var de=e(r(),1),fe=Object.defineProperty,k=(e,t)=>fe(e,`name`,{value:t,configurable:!0});function pe(e,t){return d.useReducer((e,n)=>t[e][n]??e,e)}k(pe,`useStateMachine`);var A=k(e=>{let{present:t,children:n}=e,r=me(t),i=typeof n==`function`?n({present:r.isPresent}):d.Children.only(n),a=ge(r.ref,_e(i));return typeof n==`function`||r.isPresent?d.cloneElement(i,{ref:a}):null},`Presence`);function me(e){let[t,n]=d.useState(),r=d.useRef(null),i=d.useRef(e),a=d.useRef(`none`),o=d.useRef(void 0),[s,c]=pe(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return d.useEffect(()=>{s===`mounted`?(a.current=o.current??j(r.current),o.current=void 0):a.current=`none`},[s]),w(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,s=j(t);e?(o.current=s,c(`MOUNT`)):s===`none`||t?.display===`none`?c(`UNMOUNT`):c(n&&r!==s?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,c]),w(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=k(a=>{let o=j(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(c(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},`handleAnimationEnd`),s=k(e=>{e.target===t&&(a.current=j(r.current))},`handleAnimationStart`);return t.addEventListener(`animationstart`,s),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,s),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}c(`ANIMATION_END`)},[t,c]),{isPresent:[`mounted`,`unmountSuspended`].includes(s),ref:d.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,o.current=j(t)}else r.current=null;n(e)},[])}}k(me,`usePresence`);function he(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}k(he,`setRef`);function ge(...e){let t=d.useRef(e);return t.current=e,d.useCallback(e=>{let n=t.current,r=!1,i=n.map(t=>{let n=he(t,e);return!r&&typeof n==`function`&&(r=!0),n});if(r)return()=>{for(let e=0;e<i.length;e++){let t=i[e];typeof t==`function`?t():he(n[e],null)}}},[])}k(ge,`useStableComposedRefs`);function j(e){return e?.animationName||`none`}k(j,`getAnimationName`);function _e(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}k(_e,`getElementRef`);var ve=Object.defineProperty,ye=(e,t)=>ve(e,`name`,{value:t,configurable:!0}),be=d.useId||(()=>void 0),xe=0;function M(e){let[t,n]=d.useState(be());return w(()=>{e||n(e=>e??String(xe++))},[e]),e||(t?`radix-${t}`:``)}ye(M,`useId`);var Se=Object.defineProperty,Ce=(e,t)=>Se(e,`name`,{value:t,configurable:!0});function N(e){let t=d.useRef(e);return d.useEffect(()=>{t.current=e}),d.useMemo(()=>((...e)=>t.current?.(...e)),[])}Ce(N,`useCallbackRef`);var we=Object.defineProperty,P=(e,t)=>we(e,`name`,{value:t,configurable:!0}),Te=`dismissableLayer.update`,Ee=`dismissableLayer.pointerDownOutside`,De=`dismissableLayer.focusOutside`,Oe,ke=d.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Ae=d.forwardRef(P(function(e,t){let{disableOutsidePointerEvents:r=!1,deferPointerDownOutside:i=!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:s,onInteractOutside:l,onDismiss:u,...p}=e,m=d.useContext(ke),[h,g]=d.useState(null),_=h?.ownerDocument??globalThis?.document,[,v]=d.useState({}),y=c(t,g),b=Array.from(m.layers),[ee]=[...m.layersWithOutsidePointerEventsDisabled].slice(-1),S=ee?b.indexOf(ee):-1,C=h?b.indexOf(h):-1,te=m.layersWithOutsidePointerEventsDisabled.size>0,w=C>=S,ne=d.useRef(!1),re=Ne(e=>{o?.(e),l?.(e),e.defaultPrevented||u?.()},{ownerDocument:_,deferPointerDownOutside:i,isDeferredPointerDownOutsideRef:ne,dismissableSurfaces:m.dismissableSurfaces,shouldHandlePointerDownOutside:d.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...m.branches].some(t=>t.contains(e));return w&&!t},[m.branches,w])}),T=Pe(e=>{if(i&&ne.current)return;let t=e.target;[...m.branches].some(e=>e.contains(t))||(s?.(e),l?.(e),e.defaultPrevented||u?.())},_),E=h?C===b.length-1:!1,D=N(e=>{e.key===`Escape`&&(a?.(e),!e.defaultPrevented&&u&&(e.preventDefault(),u()))});return d.useEffect(()=>{if(E)return _.addEventListener(`keydown`,D,{capture:!0}),()=>_.removeEventListener(`keydown`,D,{capture:!0})},[_,E,D]),d.useEffect(()=>{if(h)return r&&(m.layersWithOutsidePointerEventsDisabled.size===0&&(Oe=_.body.style.pointerEvents,_.body.style.pointerEvents=`none`),m.layersWithOutsidePointerEventsDisabled.add(h)),m.layers.add(h),Fe(),()=>{r&&(m.layersWithOutsidePointerEventsDisabled.delete(h),m.layersWithOutsidePointerEventsDisabled.size===0&&(_.body.style.pointerEvents=Oe))}},[h,_,r,m]),d.useEffect(()=>()=>{h&&(m.layers.delete(h),m.layersWithOutsidePointerEventsDisabled.delete(h),Fe())},[h,m]),d.useEffect(()=>{let e=P(()=>v({}),`handleUpdate`);return document.addEventListener(Te,e),()=>document.removeEventListener(Te,e)},[]),(0,f.jsx)(n.div,{...p,ref:y,style:{pointerEvents:te?w?`auto`:`none`:void 0,...e.style},onFocusCapture:x(e.onFocusCapture,T.onFocusCapture),onBlurCapture:x(e.onBlurCapture,T.onBlurCapture),onPointerDownCapture:x(e.onPointerDownCapture,re.onPointerDownCapture)})},`DismissableLayer`));function je(){let e=d.useContext(ke),[t,n]=d.useState(null);return d.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}P(je,`useDismissableLayerSurface`);var Me=P(()=>!0,`IS_TRUE`);function Ne(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:i,dismissableSurfaces:a,shouldHandlePointerDownOutside:o=Me}=t,s=N(e),c=d.useRef(!1),l=d.useRef(!1),u=d.useRef(new Map),f=d.useRef(()=>{});return d.useEffect(()=>{function e(){l.current=!1,i.current=!1,u.current.clear()}P(e,`resetOutsideInteraction`);function t(){return Array.from(u.current.values()).some(Boolean)}P(t,`isOutsideInteractionIntercepted`);function d(e){if(!l.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||u.current.set(e.type,!0),e.type===`click`&&window.setTimeout(()=>{l.current&&f.current()},0)}P(d,`handleInteractionCapture`);function p(e){l.current&&u.current.set(e.type,!1)}P(p,`handleInteractionBubble`);let m=P(a=>{if(a.target&&!c.current){let d=function(){n.removeEventListener(`click`,f.current);let r=t();e(),r||Ie(Ee,s,p,{discrete:!0})};if(P(d,`handleAndDispatchPointerDownOutsideEvent`),!o(a.target)){n.removeEventListener(`click`,f.current),e(),c.current=!1;return}let p={originalEvent:a};l.current=!0,i.current=r&&a.button===0,u.current.clear(),!r||a.button!==0?d():(n.removeEventListener(`click`,f.current),f.current=d,n.addEventListener(`click`,f.current,{once:!0}))}else n.removeEventListener(`click`,f.current),e();c.current=!1},`handlePointerDown`),h=[`pointerup`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`];for(let e of h)n.addEventListener(e,d,!0),n.addEventListener(e,p);let g=window.setTimeout(()=>{n.addEventListener(`pointerdown`,m)},0);return()=>{window.clearTimeout(g),n.removeEventListener(`pointerdown`,m),n.removeEventListener(`click`,f.current);for(let e of h)n.removeEventListener(e,d,!0),n.removeEventListener(e,p)}},[n,s,r,i,a,o]),{onPointerDownCapture:P(()=>c.current=!0,`onPointerDownCapture`)}}P(Ne,`usePointerDownOutside`);function Pe(e,t=globalThis?.document){let n=N(e),r=d.useRef(!1);return d.useEffect(()=>{let e=P(e=>{e.target&&!r.current&&Ie(De,n,{originalEvent:e},{discrete:!1})},`handleFocus`);return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:P(()=>r.current=!0,`onFocusCapture`),onBlurCapture:P(()=>r.current=!1,`onBlurCapture`)}}P(Pe,`useFocusOutside`);function Fe(){let e=new CustomEvent(Te);document.dispatchEvent(e)}P(Fe,`dispatchUpdate`);function Ie(e,t,n,{discrete:r}){let i=n.originalEvent.target,o=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?a(i,o):i.dispatchEvent(o)}P(Ie,`handleAndDispatchCustomEvent`);var Le=Object.defineProperty,F=(e,t)=>Le(e,`name`,{value:t,configurable:!0}),Re=`focusScope.autoFocusOnMount`,ze=`focusScope.autoFocusOnUnmount`,Be={bubbles:!1,cancelable:!0},Ve=d.forwardRef(F(function(e,t){let{loop:r=!1,trapped:i=!1,onMountAutoFocus:a,onUnmountAutoFocus:o,...s}=e,[l,u]=d.useState(null),p=N(a),m=N(o),h=d.useRef(null),g=c(t,u),_=d.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;d.useEffect(()=>{if(i){let e=function(e){if(_.paused||!l)return;let t=e.target;l.contains(t)?h.current=t:I(h.current,{select:!0})},t=function(e){if(_.paused||!l)return;let t=e.relatedTarget;t!==null&&(l.contains(t)||I(h.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&I(l)};F(e,`handleFocusIn`),F(t,`handleFocusOut`),F(n,`handleMutations`),document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return l&&r.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[i,l,_.paused]),d.useEffect(()=>{if(l){Je.add(_);let e=document.activeElement;if(!l.contains(e)){let t=new CustomEvent(Re,Be);l.addEventListener(Re,p),l.dispatchEvent(t),t.defaultPrevented||(He(Ze(We(l)),{select:!0}),document.activeElement===e&&I(l))}return()=>{l.removeEventListener(Re,p),setTimeout(()=>{let t=new CustomEvent(ze,Be);l.addEventListener(ze,m),l.dispatchEvent(t),t.defaultPrevented||I(e??document.body,{select:!0}),l.removeEventListener(ze,m),Je.remove(_)},0)}}},[l,p,m,_]);let v=d.useCallback(e=>{if(!r&&!i||_.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,n=document.activeElement;if(t&&n){let t=e.currentTarget,[i,a]=Ue(t);i&&a?!e.shiftKey&&n===a?(e.preventDefault(),r&&I(i,{select:!0})):e.shiftKey&&n===i&&(e.preventDefault(),r&&I(a,{select:!0})):n===t&&e.preventDefault()}},[r,i,_.paused]);return(0,f.jsx)(n.div,{tabIndex:-1,...s,ref:g,onKeyDown:v})},`FocusScope`));function He(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(I(r,{select:t}),document.activeElement!==n)return}F(He,`focusFirst`);function Ue(e){let t=We(e);return[Ge(t,e),Ge(t.reverse(),e)]}F(Ue,`getTabbableEdges`);function We(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:F(e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},`acceptNode`)});for(;n.nextNode();)t.push(n.currentNode);return t}F(We,`getTabbableCandidates`);function Ge(e,t){let n=typeof t.checkVisibility==`function`&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):Ke(r,{upTo:t})))return r}F(Ge,`findVisible`);function Ke(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}F(Ke,`isHidden`);function qe(e){return e instanceof HTMLInputElement&&`select`in e}F(qe,`isSelectableInput`);function I(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&qe(e)&&t&&e.select()}}F(I,`focus`);var Je=Ye();function Ye(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=Xe(e,t),e.unshift(t)},remove(t){e=Xe(e,t),e[0]?.resume()}}}F(Ye,`createFocusScopesStack`);function Xe(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}F(Xe,`arrayRemove`);function Ze(e){return e.filter(e=>e.tagName!==`A`)}F(Ze,`removeLinks`);var Qe=Object.defineProperty,$e=d.forwardRef(((e,t)=>Qe(e,`name`,{value:t,configurable:!0}))(function(e,t){let{container:r,...i}=e,[a,o]=d.useState(!1);w(()=>o(!0),[]);let s=r||a&&globalThis?.document?.body;return s?de.createPortal((0,f.jsx)(n.div,{...i,ref:t}),s):null},`Portal`)),et=Object.defineProperty,tt=(e,t)=>et(e,`name`,{value:t,configurable:!0}),L=0,R=null;function nt(e){return z(),e.children}tt(nt,`FocusGuards`);function z(){d.useEffect(()=>{R||={start:rt(),end:rt()};let{start:e,end:t}=R;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),L++,()=>{L===1&&(R?.start.remove(),R?.end.remove(),R=null),L=Math.max(0,L-1)}},[])}tt(z,`useFocusGuards`);function rt(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}tt(rt,`createFocusGuard`);var B=function(){return B=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},B.apply(this,arguments)};function it(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function at(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var V=`right-scroll-bar-position`,H=`width-before-scroll-bar`,ot=`with-scroll-bars-hidden`,st=`--removed-body-scroll-bar-size`;function ct(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function lt(e,t){var n=(0,d.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var ut=typeof window<`u`?d.useLayoutEffect:d.useEffect,dt=new WeakMap;function ft(e,t){var n=lt(t||null,function(t){return e.forEach(function(e){return ct(e,t)})});return ut(function(){var t=dt.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||ct(e,null)}),i.forEach(function(e){r.has(e)||ct(e,a)})}dt.set(n,e)},[e]),n}function pt(e){return e}function mt(e,t){t===void 0&&(t=pt);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function ht(e){e===void 0&&(e={});var t=mt(null);return t.options=B({async:!0,ssr:!1},e),t}var gt=function(e){var t=e.sideCar,n=it(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return d.createElement(r,B({},n))};gt.isSideCarExport=!0;function _t(e,t){return e.useMedium(t),gt}var vt=ht(),yt=function(){},U=d.forwardRef(function(e,t){var n=d.useRef(null),r=d.useState({onScrollCapture:yt,onWheelCapture:yt,onTouchMoveCapture:yt}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,c=e.className,l=e.removeScrollBar,u=e.enabled,f=e.shards,p=e.sideCar,m=e.noRelative,h=e.noIsolation,g=e.inert,_=e.allowPinchZoom,v=e.as,y=v===void 0?`div`:v,b=e.gapMode,x=it(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),ee=p,S=ft([n,t]),C=B(B({},x),i);return d.createElement(d.Fragment,null,u&&d.createElement(ee,{sideCar:vt,removeScrollBar:l,shards:f,noRelative:m,noIsolation:h,inert:g,setCallbacks:a,allowPinchZoom:!!_,lockRef:n,gapMode:b}),o?d.cloneElement(d.Children.only(s),B(B({},C),{ref:S})):d.createElement(y,B({},C,{className:c,ref:S}),s))});U.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},U.classNames={fullWidth:H,zeroRight:V};var bt=function(){if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function xt(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=bt();return t&&e.setAttribute(`nonce`,t),e}function St(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function Ct(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var wt=function(){var e=0,t=null;return{add:function(n){e==0&&(t=xt())&&(St(t,n),Ct(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},Tt=function(){var e=wt();return function(t,n){d.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},Et=function(){var e=Tt();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},Dt={left:0,top:0,right:0,gap:0},Ot=function(e){return parseInt(e||``,10)||0},kt=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[Ot(n),Ot(r),Ot(i)]},At=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return Dt;var t=kt(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},jt=Et(),W=`data-scroll-locked`,Mt=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
2
2
  .${ot} {
3
3
  overflow: hidden ${r};
4
4
  padding-right: ${s}px ${r};
@@ -1 +1 @@
1
- import{r as e}from"./hePW80VL.js";import{p as t}from"./CYz610vE.js";import{i as n,r,t as i}from"./Cu_sGzNJ.js";import{t as a}from"./CgQ0qqq4.js";import{N as o,t as s}from"./S7HbowYz.js";import{n as c}from"./D8_hwGjG.js";import{n as l}from"./C1gqjEN3.js";import{a as u}from"./BkXrfAoR.js";import{a as d}from"./BnJGrP6V.js";import{E as f,Mt as p,pt as m,wt as h}from"./CExE8dKz.js";var g=e(t(),1),_=r(),v=e=>e instanceof Error?e.message:String(e);function y({connectionId:e,tabId:t,item:r}){let{t:y}=n(),x=s(t=>t.activeConnections.find(t=>t.id===e)?.serverConnectionId??null),S=s(t=>t.activeConnections.find(t=>t.id===e)?.readOnly??!1),[C,w]=(0,g.useState)(null),[T,E]=(0,g.useState)(!1),[D,O]=(0,g.useState)(null),[k,A]=(0,g.useState)(`tree`),[j,M]=(0,g.useState)(``),[N,P]=(0,g.useState)(!1),F=o(r.database,r.name),I=(0,g.useCallback)(async()=>{if(x)try{let e=(await u(x)(`GET ${F}`,``)).reply;if(!e?.found){E(!0),w(null);return}E(!1),w({source:e._source,version:e._version??null,seqNo:e._seq_no??null,primaryTerm:e._primary_term??null}),M(JSON.stringify(e._source,null,2))}catch(e){/not_found|404/.test(v(e))?E(!0):O(v(e))}},[x,F]);(0,g.useEffect)(()=>{Promise.resolve().then(()=>I())},[I]);let L=(n,r=!1)=>d(e,n,{database:``,tabId:t,skipDestructiveConfirm:r}),R=async()=>{if(!C)return;let e;try{e=JSON.parse(j)}catch(e){O(y(`docViewer.invalidJson`,{message:v(e)}));return}P(!0),O(null);try{let t=C.seqNo!==null&&C.primaryTerm!==null?`?if_seq_no=${C.seqNo}&if_primary_term=${C.primaryTerm}`:``;await L(`PUT ${F}${t}\n${JSON.stringify(e,null,2)}`),await I(),A(`tree`)}catch(e){if(e instanceof Error&&e.name===`ExecutionCancelled`)return;let t=v(e);O(/version_conflict/.test(t)?y(`docViewer.conflict`):t)}finally{P(!1)}},z=async()=>{let n=`DELETE ${F}`;if(await c.getState().requestDestructiveConfirm({title:y(`docViewer.deleteTitle`,{id:r.name}),description:y(`docViewer.deleteDescription`,{index:r.database}),statements:[n],confirmLabel:y(`docViewer.delete`)}))try{await L(n,!0),l.getState().removeQueryTab(e,t)}catch(e){e instanceof Error&&e.name===`ExecutionCancelled`||O(v(e))}};if(!x)return(0,_.jsx)(`p`,{className:`p-6 text-sm text-muted-foreground`,children:y(`keyViewer.notConnected`)});let B=`flex h-7 items-center gap-1 rounded border bg-background px-2 text-xs text-muted-foreground hover:text-foreground disabled:opacity-40`,V=e=>`rounded px-2 py-0.5 ${e?`bg-primary/15 text-primary`:`text-muted-foreground hover:text-foreground`}`,H=C!==null&&j!==JSON.stringify(C.source,null,2);return(0,_.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,_.jsxs)(`div`,{className:`flex flex-shrink-0 flex-wrap items-center gap-x-3 gap-y-1.5 border-b bg-muted/30 px-3 py-1.5 text-xs`,children:[(0,_.jsx)(`span`,{className:`rounded bg-primary/15 px-1.5 py-0.5 font-mono text-[10px] font-semibold uppercase text-primary`,children:`doc`}),(0,_.jsxs)(`span`,{className:`font-mono text-sm font-medium`,children:[r.database,(0,_.jsx)(`span`,{className:`text-muted-foreground`,children:` / `}),r.name]}),C&&(0,_.jsx)(`span`,{className:`text-muted-foreground`,children:y(`docViewer.meta`,{version:C.version??`—`,seqNo:C.seqNo??`—`,primaryTerm:C.primaryTerm??`—`})}),(0,_.jsx)(`div`,{className:`flex-1`}),(0,_.jsxs)(`button`,{type:`button`,className:B,onClick:()=>{O(null),I()},children:[(0,_.jsx)(p,{className:`size-3`}),y(`keyViewer.refresh`)]}),(0,_.jsxs)(`button`,{type:`button`,className:B,onClick:()=>m(e,`GET ${F}`,``,r.name),children:[(0,_.jsx)(a,{className:`size-3`}),y(`keyViewer.openInConsole`)]}),!S&&!T&&(0,_.jsxs)(`button`,{type:`button`,className:`${B} hover:border-destructive/40 hover:text-destructive`,onClick:()=>void z(),children:[(0,_.jsx)(h,{className:`size-3`}),y(`docViewer.delete`)]})]}),D&&(0,_.jsxs)(`div`,{className:`flex flex-shrink-0 items-start gap-2 border-b border-destructive/30 bg-destructive/10 px-3 py-1.5 text-xs text-destructive`,children:[(0,_.jsx)(`span`,{className:`flex-1 whitespace-pre-wrap`,children:D}),(0,_.jsx)(`button`,{type:`button`,onClick:()=>O(null),children:(0,_.jsx)(i,{className:`size-3.5`})})]}),T?(0,_.jsx)(`p`,{className:`p-6 text-sm text-muted-foreground`,children:y(`docViewer.gone`)}):C?(0,_.jsxs)(_.Fragment,{children:[(0,_.jsxs)(`div`,{className:`flex flex-shrink-0 items-center gap-2 border-b px-3 py-1.5 text-xs`,children:[(0,_.jsxs)(`div`,{className:`flex items-center gap-0.5 rounded border p-0.5`,children:[(0,_.jsx)(`button`,{type:`button`,className:V(k===`tree`),onClick:()=>A(`tree`),children:y(`keyViewer.viewTree`)}),(0,_.jsx)(`button`,{type:`button`,className:V(k===`text`),onClick:()=>A(`text`),children:y(`keyViewer.viewText`)})]}),(0,_.jsx)(`div`,{className:`flex-1`}),!S&&(0,_.jsxs)(_.Fragment,{children:[H&&(0,_.jsx)(`button`,{type:`button`,onClick:()=>M(JSON.stringify(C.source,null,2)),className:`rounded border bg-background px-2 py-0.5 text-muted-foreground hover:text-foreground`,children:y(`keyViewer.revert`)}),(0,_.jsx)(`button`,{type:`button`,disabled:!H||N,onClick:()=>void R(),className:`rounded border border-primary/30 bg-primary/10 px-2 py-0.5 text-primary hover:bg-primary/20 disabled:opacity-40`,children:y(`keyViewer.save`)})]})]}),k===`tree`?(0,_.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto py-3 pl-7 pr-3 font-mono text-xs`,children:(0,_.jsx)(f,{value:H?b(j)??C.source:C.source,defaultExpanded:!0})}):(0,_.jsx)(`textarea`,{className:`min-h-0 flex-1 resize-none bg-background p-3 font-mono text-xs outline-none`,spellCheck:!1,readOnly:S,value:j,onChange:e=>M(e.target.value)})]}):(0,_.jsx)(`p`,{className:`p-6 text-sm text-muted-foreground`,children:y(`keyViewer.loading`)})]})}function b(e){try{return JSON.parse(e)}catch{return}}export{y as DocumentViewer};
1
+ import{r as e}from"./hePW80VL.js";import{p as t}from"./CyX8oVsa.js";import{i as n,r,t as i}from"./C76CctEl.js";import{t as a}from"./CcaDuuFY.js";import{N as o,t as s}from"./iz6RnRcO.js";import{n as c}from"./BihjBM79.js";import{n as l}from"./C_qmv4pB.js";import{a as u}from"./BVZGLNq_.js";import{a as d}from"./CZRhmV_L.js";import{E as f,Mt as p,pt as m,wt as h}from"./D4DxtYTA.js";var g=e(t(),1),_=r(),v=e=>e instanceof Error?e.message:String(e);function y({connectionId:e,tabId:t,item:r}){let{t:y}=n(),x=s(t=>t.activeConnections.find(t=>t.id===e)?.serverConnectionId??null),S=s(t=>t.activeConnections.find(t=>t.id===e)?.readOnly??!1),[C,w]=(0,g.useState)(null),[T,E]=(0,g.useState)(!1),[D,O]=(0,g.useState)(null),[k,A]=(0,g.useState)(`tree`),[j,M]=(0,g.useState)(``),[N,P]=(0,g.useState)(!1),F=o(r.database,r.name),I=(0,g.useCallback)(async()=>{if(x)try{let e=(await u(x)(`GET ${F}`,``)).reply;if(!e?.found){E(!0),w(null);return}E(!1),w({source:e._source,version:e._version??null,seqNo:e._seq_no??null,primaryTerm:e._primary_term??null}),M(JSON.stringify(e._source,null,2))}catch(e){/not_found|404/.test(v(e))?E(!0):O(v(e))}},[x,F]);(0,g.useEffect)(()=>{Promise.resolve().then(()=>I())},[I]);let L=(n,r=!1)=>d(e,n,{database:``,tabId:t,skipDestructiveConfirm:r}),R=async()=>{if(!C)return;let e;try{e=JSON.parse(j)}catch(e){O(y(`docViewer.invalidJson`,{message:v(e)}));return}P(!0),O(null);try{let t=C.seqNo!==null&&C.primaryTerm!==null?`?if_seq_no=${C.seqNo}&if_primary_term=${C.primaryTerm}`:``;await L(`PUT ${F}${t}\n${JSON.stringify(e,null,2)}`),await I(),A(`tree`)}catch(e){if(e instanceof Error&&e.name===`ExecutionCancelled`)return;let t=v(e);O(/version_conflict/.test(t)?y(`docViewer.conflict`):t)}finally{P(!1)}},z=async()=>{let n=`DELETE ${F}`;if(await c.getState().requestDestructiveConfirm({title:y(`docViewer.deleteTitle`,{id:r.name}),description:y(`docViewer.deleteDescription`,{index:r.database}),statements:[n],confirmLabel:y(`docViewer.delete`)}))try{await L(n,!0),l.getState().removeQueryTab(e,t)}catch(e){e instanceof Error&&e.name===`ExecutionCancelled`||O(v(e))}};if(!x)return(0,_.jsx)(`p`,{className:`p-6 text-sm text-muted-foreground`,children:y(`keyViewer.notConnected`)});let B=`flex h-7 items-center gap-1 rounded border bg-background px-2 text-xs text-muted-foreground hover:text-foreground disabled:opacity-40`,V=e=>`rounded px-2 py-0.5 ${e?`bg-primary/15 text-primary`:`text-muted-foreground hover:text-foreground`}`,H=C!==null&&j!==JSON.stringify(C.source,null,2);return(0,_.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,_.jsxs)(`div`,{className:`flex flex-shrink-0 flex-wrap items-center gap-x-3 gap-y-1.5 border-b bg-muted/30 px-3 py-1.5 text-xs`,children:[(0,_.jsx)(`span`,{className:`rounded bg-primary/15 px-1.5 py-0.5 font-mono text-[10px] font-semibold uppercase text-primary`,children:`doc`}),(0,_.jsxs)(`span`,{className:`font-mono text-sm font-medium`,children:[r.database,(0,_.jsx)(`span`,{className:`text-muted-foreground`,children:` / `}),r.name]}),C&&(0,_.jsx)(`span`,{className:`text-muted-foreground`,children:y(`docViewer.meta`,{version:C.version??`—`,seqNo:C.seqNo??`—`,primaryTerm:C.primaryTerm??`—`})}),(0,_.jsx)(`div`,{className:`flex-1`}),(0,_.jsxs)(`button`,{type:`button`,className:B,onClick:()=>{O(null),I()},children:[(0,_.jsx)(p,{className:`size-3`}),y(`keyViewer.refresh`)]}),(0,_.jsxs)(`button`,{type:`button`,className:B,onClick:()=>m(e,`GET ${F}`,``,r.name),children:[(0,_.jsx)(a,{className:`size-3`}),y(`keyViewer.openInConsole`)]}),!S&&!T&&(0,_.jsxs)(`button`,{type:`button`,className:`${B} hover:border-destructive/40 hover:text-destructive`,onClick:()=>void z(),children:[(0,_.jsx)(h,{className:`size-3`}),y(`docViewer.delete`)]})]}),D&&(0,_.jsxs)(`div`,{className:`flex flex-shrink-0 items-start gap-2 border-b border-destructive/30 bg-destructive/10 px-3 py-1.5 text-xs text-destructive`,children:[(0,_.jsx)(`span`,{className:`flex-1 whitespace-pre-wrap`,children:D}),(0,_.jsx)(`button`,{type:`button`,onClick:()=>O(null),children:(0,_.jsx)(i,{className:`size-3.5`})})]}),T?(0,_.jsx)(`p`,{className:`p-6 text-sm text-muted-foreground`,children:y(`docViewer.gone`)}):C?(0,_.jsxs)(_.Fragment,{children:[(0,_.jsxs)(`div`,{className:`flex flex-shrink-0 items-center gap-2 border-b px-3 py-1.5 text-xs`,children:[(0,_.jsxs)(`div`,{className:`flex items-center gap-0.5 rounded border p-0.5`,children:[(0,_.jsx)(`button`,{type:`button`,className:V(k===`tree`),onClick:()=>A(`tree`),children:y(`keyViewer.viewTree`)}),(0,_.jsx)(`button`,{type:`button`,className:V(k===`text`),onClick:()=>A(`text`),children:y(`keyViewer.viewText`)})]}),(0,_.jsx)(`div`,{className:`flex-1`}),!S&&(0,_.jsxs)(_.Fragment,{children:[H&&(0,_.jsx)(`button`,{type:`button`,onClick:()=>M(JSON.stringify(C.source,null,2)),className:`rounded border bg-background px-2 py-0.5 text-muted-foreground hover:text-foreground`,children:y(`keyViewer.revert`)}),(0,_.jsx)(`button`,{type:`button`,disabled:!H||N,onClick:()=>void R(),className:`rounded border border-primary/30 bg-primary/10 px-2 py-0.5 text-primary hover:bg-primary/20 disabled:opacity-40`,children:y(`keyViewer.save`)})]})]}),k===`tree`?(0,_.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto py-3 pl-7 pr-3 font-mono text-xs`,children:(0,_.jsx)(f,{value:H?b(j)??C.source:C.source,defaultExpanded:!0})}):(0,_.jsx)(`textarea`,{className:`min-h-0 flex-1 resize-none bg-background p-3 font-mono text-xs outline-none`,spellCheck:!1,readOnly:S,value:j,onChange:e=>M(e.target.value)})]}):(0,_.jsx)(`p`,{className:`p-6 text-sm text-muted-foreground`,children:y(`keyViewer.loading`)})]})}function b(e){try{return JSON.parse(e)}catch{return}}export{y as DocumentViewer};
@@ -1,4 +1,4 @@
1
- import{r as e}from"./hePW80VL.js";import{p as t}from"./CYz610vE.js";import{t as n}from"./CiL8zoYm.js";import{i as r,r as i}from"./Cu_sGzNJ.js";import{a,i as o,n as s,o as c,t as l}from"./DzRyVlxz.js";import{a as u,i as d,n as f,r as p,t as m}from"./G06qjCej.js";import{t as h}from"./S7HbowYz.js";import{n as g}from"./D8_hwGjG.js";import{n as _}from"./C1gqjEN3.js";import{C as v,a as y}from"./BkXrfAoR.js";import{r as b}from"./BRZhVXRC.js";import{o as x,r as S}from"./B9dhM8vw.js";import{c as C,vt as w}from"./CExE8dKz.js";import{t as T}from"./CnYBZPf9.js";var E=e(t(),1),D=i();function O(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&#39;`)}function k(){let{t:e}=r(),{activeDialog:t,closeDialog:i}=g(),{activeConnectionId:k,activeConnections:A}=h(),{trees:j}=v(),M=_(),N=t===`export-html`,P=(0,E.useMemo)(()=>k?S(j[k]??[]):[],[k,j]),F=(0,E.useMemo)(()=>{if(!k)return``;let e=M.activeTabId[k];return(M.tabs[k]??[]).find(t=>t.id===e)?.database||``},[k,M.activeTabId,M.tabs]),[I,L]=(0,E.useState)(``),R=(0,E.useMemo)(()=>!k||!I?[]:x(j[k]??[],I),[k,I,j]),[z,B]=(0,E.useState)([]),[V,H]=(0,E.useState)(!0),[U,W]=(0,E.useState)(!0),[G,K]=(0,E.useState)(!0),[q,J]=(0,E.useState)(!1);(0,E.useEffect)(()=>{N&&F&&L(F)},[N,F]);function Y(e){e||(i(),L(``),B([]),H(!0),W(!0),K(!0))}function X(e){B(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])}function Z(){B(R.length===z.length?[]:[...R])}async function Q(){if(z.length===0||!k)return;let t=A.find(e=>e.id===k);if(!t?.serverConnectionId)return;J(!0);let{introspect:n}=b(k),r=y(t.serverConnectionId),a=(e,t,n)=>{let r=`<h3>${O(e)}</h3>\n<table border="1" cellpadding="4" cellspacing="0">\n`;r+=`<tr>${t.map(e=>`<th>${O(e)}</th>`).join(``)}</tr>\n`;for(let e of n)r+=`<tr>${e.map(e=>`<td>${O(e==null?`NULL`:String(e))}</td>`).join(``)}</tr>\n`;return r+`</table>
1
+ import{r as e}from"./hePW80VL.js";import{p as t}from"./CyX8oVsa.js";import{t as n}from"./Dya0zxo6.js";import{i as r,r as i}from"./C76CctEl.js";import{a,i as o,n as s,o as c,t as l}from"./kTwcxyaO.js";import{a as u,i as d,n as f,r as p,t as m}from"./34iJa-68.js";import{t as h}from"./iz6RnRcO.js";import{n as g}from"./BihjBM79.js";import{n as _}from"./C_qmv4pB.js";import{C as v,a as y}from"./BVZGLNq_.js";import{r as b}from"./CH4cEkW4.js";import{o as x,r as S}from"./Buf-_p3w.js";import{c as C,vt as w}from"./D4DxtYTA.js";import{t as T}from"./CnYBZPf9.js";var E=e(t(),1),D=i();function O(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&#39;`)}function k(){let{t:e}=r(),{activeDialog:t,closeDialog:i}=g(),{activeConnectionId:k,activeConnections:A}=h(),{trees:j}=v(),M=_(),N=t===`export-html`,P=(0,E.useMemo)(()=>k?S(j[k]??[]):[],[k,j]),F=(0,E.useMemo)(()=>{if(!k)return``;let e=M.activeTabId[k];return(M.tabs[k]??[]).find(t=>t.id===e)?.database||``},[k,M.activeTabId,M.tabs]),[I,L]=(0,E.useState)(``),R=(0,E.useMemo)(()=>!k||!I?[]:x(j[k]??[],I),[k,I,j]),[z,B]=(0,E.useState)([]),[V,H]=(0,E.useState)(!0),[U,W]=(0,E.useState)(!0),[G,K]=(0,E.useState)(!0),[q,J]=(0,E.useState)(!1);(0,E.useEffect)(()=>{N&&F&&L(F)},[N,F]);function Y(e){e||(i(),L(``),B([]),H(!0),W(!0),K(!0))}function X(e){B(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])}function Z(){B(R.length===z.length?[]:[...R])}async function Q(){if(z.length===0||!k)return;let t=A.find(e=>e.id===k);if(!t?.serverConnectionId)return;J(!0);let{introspect:n}=b(k),r=y(t.serverConnectionId),a=(e,t,n)=>{let r=`<h3>${O(e)}</h3>\n<table border="1" cellpadding="4" cellspacing="0">\n`;r+=`<tr>${t.map(e=>`<th>${O(e)}</th>`).join(``)}</tr>\n`;for(let e of n)r+=`<tr>${e.map(e=>`<td>${O(e==null?`NULL`:String(e))}</td>`).join(``)}</tr>\n`;return r+`</table>
2
2
  `};try{let t=[];for(let i of z){let o=`<h2>${O(i)}</h2>\n`;if(V){let t=await n.listColumns(r,I,i);t.length>0&&(o+=a(e(`database.html.sectionColumns`),[`Field`,`Type`,`Null`,`Key`,`Default`,`Extra`,`Comment`],t.map(e=>[e.name,e.type,e.nullable?`YES`:`NO`,e.key,e.defaultValue,e.extra,e.comment])))}if(U){let t=await n.listIndexes(r,I,i);t.length>0&&(o+=a(e(`database.html.sectionIndexes`),[`Key_name`,`Type`,`Columns`],t.map(e=>[e.name,e.type,e.columns.join(`, `)])))}if(G){let t=await n.getTableInfo(r,I,i);t&&(o+=a(e(`database.html.sectionProperties`),[`Name`,`Engine`,`Collation`,`Rows`,`Data_length`,`Create_time`,`Update_time`,`Comment`],[[t.name,t.engine,t.collation,t.rows,t.dataLength,t.createTime,t.updateTime,t.comment]]))}t.push(o)}let i=`<!DOCTYPE html>
3
3
  <html lang="en">
4
4
  <head>
@@ -1 +1 @@
1
- import{r as e}from"./hePW80VL.js";import{o as t,p as n}from"./CYz610vE.js";import{t as r}from"./CiL8zoYm.js";import{i,r as a}from"./Cu_sGzNJ.js";import{a as o,i as ee,n as te,o as ne,r as re,t as ie}from"./DzRyVlxz.js";import{a as s,i as c,n as l,r as u,t as d}from"./G06qjCej.js";import{t as f}from"./S7HbowYz.js";import{n as p,t as m}from"./D8_hwGjG.js";import{a as h}from"./BkXrfAoR.js";import{r as g}from"./BRZhVXRC.js";import{n as ae,s as _}from"./BnJGrP6V.js";import{Bt as oe,Ct as se,c as v,l as ce,pt as y,vt as le}from"./CExE8dKz.js";var b=e(n(),1),ue=[`SUM`,`AVG`,`MIN`,`MAX`],x=`row_count`;function S(e,t){if(t.columns.length===0)return``;let n=t=>e.quoteIdentifier(t),r=t.columns.map(n),i=[...r,`COUNT(*) AS ${n(x)}`];if(t.aggregate){let{fn:e,column:r}=t.aggregate;i.push(`${e}(${n(r)}) AS ${n(`${e.toLowerCase()}_${r}`)}`)}let a=[];return t.where&&a.push(t.where),a.push(`GROUP BY ${r.join(`, `)}`),t.minCount&&t.minCount>1&&a.push(`HAVING COUNT(*) >= ${Math.floor(t.minCount)}`),a.push(`ORDER BY COUNT(*) DESC`),t.limit>0&&a.push(e.limitClause(t.limit)),e.getQuery(`SELECT_TABLE`,t.database,t.table,i.join(`, `),a.join(` `))}function C(e){let t=new Set;for(let n of e){let e=n.columns[0];e&&t.add(e.toLowerCase())}return t}function w(e,t){return t.has(e.toLowerCase())}function de(e,t){let n=C(t);return e.some(e=>w(e,n))}var T=a(),E=`none`,fe=/\b(int|dec|numeric|number|float|double|real|money|serial)/i;function D(){let{t:e}=i(),n=p(e=>e.activeDialog),a=p(e=>e.closeDialog),x=m(`group-by`),D=n===`group-by`,O=f(e=>e.activeConnections),pe=f(e=>e.activeConnectionId),me=(0,b.useMemo)(()=>O.filter(e=>e.serverConnectionId),[O]),[k,he]=(0,b.useState)(()=>x?.connectionId??pe??``),[A,j]=(0,b.useState)(()=>x?.database??``),[M,N]=(0,b.useState)(()=>x?.table??``),[P,F]=(0,b.useState)([]),[I,L]=(0,b.useState)([]),R=x&&k===x.connectionId&&A===x.database&&M===x.table?x.where??``:``,[z,ge]=(0,b.useState)([]),[B,_e]=(0,b.useState)([]),[V,H]=(0,b.useState)(()=>x?.column?[x.column]:[]),[U,ve]=(0,b.useState)(E),[W,ye]=(0,b.useState)(``),[G,be]=(0,b.useState)(`1`),[K,xe]=(0,b.useState)(!0),[q,J]=(0,b.useState)(``),[Se,Y]=(0,b.useState)(!1),X=e=>f.getState().activeConnections.find(t=>t.id===e)?.serverConnectionId;(0,b.useEffect)(()=>{if(!D||!k)return;let e=X(k);if(!e)return;let t=!1;return(async()=>{try{let n=await g(k).introspect.listDatabases(h(e));if(t)return;F(n),j(e=>e&&n.includes(e)?e:n[0]??``)}catch(e){t||J(e instanceof Error?e.message:String(e))}})(),()=>{t=!0}},[D,k]),(0,b.useEffect)(()=>{if(!D||!k||!A)return;let e=X(k);if(!e)return;let t=!1;return(async()=>{try{let n=await g(k).introspect.listTables(h(e),A);if(t)return;let r=n.map(e=>e.name);L(r),N(e=>e&&r.includes(e)?e:r[0]??``)}catch(e){t||J(e instanceof Error?e.message:String(e))}})(),()=>{t=!0}},[D,k,A]),(0,b.useEffect)(()=>{if(!D||!k||!M)return;let e=X(k);if(!e)return;let t=!1;return(async()=>{let n=h(e),r=g(k).introspect;try{let[e,i]=await Promise.all([r.listColumns(n,A,M),r.listIndexes(n,A,M).catch(()=>[])]);if(t)return;ge(e),_e(i),H(t=>t.filter(t=>e.some(e=>e.name===t)))}catch(e){t||J(e instanceof Error?e.message:String(e))}})(),()=>{t=!0}},[D,k,A,M]);let Ce=(0,b.useMemo)(()=>C(B),[B]),we=(0,b.useMemo)(()=>z.filter(e=>fe.test(e.type)),[z]),Z=(0,b.useMemo)(()=>!k||V.length===0?``:S(g(k),{database:A,table:M,columns:V,aggregate:U!==E&&W?{fn:U,column:W}:null,where:K?R:``,minCount:Number(G)||1,limit:_()}),[k,A,M,V,U,W,G,K,R]),Q=V.length>0&&B.length>0&&!de(V,B);function Te(e){H(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])}function $(e){t(`group_by`,{action:e,dbms:g(k).id,columns:V.length,aggregate:U,filtered:!!(K&&R),indexed:!Q})}function Ee(){Z&&($(`open`),y(k,Z,A,e(`database.groupBy.tabTitle`,{table:M})),a())}async function De(){if(!Z)return;$(`run`),Y(!0);let t=y(k,Z,A,e(`database.groupBy.tabTitle`,{table:M}));a();try{await ae(k,t)}finally{Y(!1)}}return(0,T.jsx)(ie,{open:D,onOpenChange:e=>{e||a()},children:(0,T.jsxs)(te,{className:`flex max-h-[85vh] flex-col sm:max-w-[720px]`,children:[(0,T.jsxs)(o,{children:[(0,T.jsx)(ne,{children:e(`database.groupBy.title`)}),(0,T.jsx)(re,{children:e(`database.groupBy.description`,{table:M})})]}),q&&(0,T.jsx)(`p`,{className:`rounded-md border border-destructive/40 px-3 py-2 text-xs text-destructive`,children:q}),(0,T.jsxs)(`div`,{className:`grid grid-cols-3 gap-2`,children:[(0,T.jsxs)(`div`,{className:`space-y-1`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.connection`)}),(0,T.jsxs)(d,{value:k,onValueChange:he,children:[(0,T.jsx)(c,{className:`h-8 text-xs`,children:(0,T.jsx)(s,{})}),(0,T.jsx)(l,{children:me.map(e=>(0,T.jsx)(u,{value:e.id,children:e.hostName||e.host||e.file||e.id},e.id))})]})]}),(0,T.jsxs)(`div`,{className:`space-y-1`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.database`)}),(0,T.jsxs)(d,{value:A,onValueChange:j,children:[(0,T.jsx)(c,{className:`h-8 text-xs`,children:(0,T.jsx)(s,{})}),(0,T.jsx)(l,{children:P.map(e=>(0,T.jsx)(u,{value:e,children:e},e))})]})]}),(0,T.jsxs)(`div`,{className:`space-y-1`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.table`)}),(0,T.jsxs)(d,{value:M,onValueChange:N,children:[(0,T.jsx)(c,{className:`h-8 text-xs`,children:(0,T.jsx)(s,{})}),(0,T.jsx)(l,{children:I.map(e=>(0,T.jsx)(u,{value:e,children:e},e))})]})]})]}),(0,T.jsxs)(`div`,{className:`grid min-h-0 grid-cols-[1fr_1fr] gap-4`,children:[(0,T.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-1.5`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.columns`)}),(0,T.jsx)(le,{className:`h-[260px] rounded-md border`,children:(0,T.jsx)(`ul`,{className:`p-1`,children:z.map(t=>{let n=w(t.name,Ce);return(0,T.jsx)(`li`,{children:(0,T.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 rounded px-2 py-1 text-xs hover:bg-accent`,children:[(0,T.jsx)(`input`,{type:`checkbox`,checked:V.includes(t.name),onChange:()=>Te(t.name)}),(0,T.jsx)(`span`,{className:`truncate font-medium`,children:t.name}),(0,T.jsx)(`span`,{className:`truncate text-muted-foreground`,children:t.type}),n&&(0,T.jsx)(oe,{className:`ml-auto h-3 w-3 shrink-0 text-muted-foreground`,"aria-label":e(`database.groupBy.indexed`)})]})},t.name)})})})]}),(0,T.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,T.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.aggregate`)}),(0,T.jsxs)(`div`,{className:`flex gap-2`,children:[(0,T.jsxs)(d,{value:U,onValueChange:ve,children:[(0,T.jsx)(c,{className:`h-8 w-[110px] text-xs`,children:(0,T.jsx)(s,{})}),(0,T.jsxs)(l,{children:[(0,T.jsx)(u,{value:E,children:e(`database.groupBy.countOnly`)}),ue.map(e=>(0,T.jsx)(u,{value:e,children:e},e))]})]}),(0,T.jsxs)(d,{value:W,onValueChange:ye,disabled:U===E,children:[(0,T.jsx)(c,{className:`h-8 flex-1 text-xs`,children:(0,T.jsx)(s,{placeholder:e(`database.groupBy.column`)})}),(0,T.jsx)(l,{children:we.map(e=>(0,T.jsx)(u,{value:e.name,children:e.name},e.name))})]})]})]}),(0,T.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,T.jsx)(v,{htmlFor:`gb-min`,className:`text-xs`,children:e(`database.groupBy.minCount`)}),(0,T.jsx)(ce,{id:`gb-min`,type:`number`,min:1,value:G,onChange:e=>be(e.target.value),className:`h-8 text-xs`})]}),R&&(0,T.jsxs)(`label`,{className:`flex items-center gap-2 text-xs`,children:[(0,T.jsx)(`input`,{type:`checkbox`,checked:K,onChange:e=>xe(e.target.checked)}),e(`database.groupBy.useFilter`)]}),Q&&(0,T.jsxs)(`p`,{className:`flex gap-1.5 rounded-md border border-dashed px-2 py-1.5 text-xs text-muted-foreground`,children:[(0,T.jsx)(se,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`}),(0,T.jsx)(`span`,{children:e(`database.groupBy.noIndexWarning`)})]})]})]}),(0,T.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.preview`)}),(0,T.jsx)(`pre`,{className:`max-h-[120px] overflow-auto rounded-md border bg-muted p-2 font-mono text-xs whitespace-pre-wrap`,children:Z||e(`database.groupBy.pickColumn`)})]}),(0,T.jsxs)(ee,{children:[(0,T.jsx)(r,{variant:`outline`,onClick:a,children:e(`command.close`)}),(0,T.jsx)(r,{variant:`outline`,onClick:Ee,disabled:!Z,children:e(`database.groupBy.openInTab`)}),(0,T.jsx)(r,{onClick:De,disabled:!Z||Se,children:e(`database.groupBy.run`)})]})]})})}export{D as GroupByDialog};
1
+ import{r as e}from"./hePW80VL.js";import{o as t,p as n}from"./CyX8oVsa.js";import{t as r}from"./Dya0zxo6.js";import{i,r as a}from"./C76CctEl.js";import{a as o,i as ee,n as te,o as ne,r as re,t as ie}from"./kTwcxyaO.js";import{a as s,i as c,n as l,r as u,t as d}from"./34iJa-68.js";import{t as f}from"./iz6RnRcO.js";import{n as p,t as m}from"./BihjBM79.js";import{a as h}from"./BVZGLNq_.js";import{r as g}from"./CH4cEkW4.js";import{n as ae,s as _}from"./CZRhmV_L.js";import{Bt as oe,Ct as se,c as v,l as ce,pt as y,vt as le}from"./D4DxtYTA.js";var b=e(n(),1),ue=[`SUM`,`AVG`,`MIN`,`MAX`],x=`row_count`;function S(e,t){if(t.columns.length===0)return``;let n=t=>e.quoteIdentifier(t),r=t.columns.map(n),i=[...r,`COUNT(*) AS ${n(x)}`];if(t.aggregate){let{fn:e,column:r}=t.aggregate;i.push(`${e}(${n(r)}) AS ${n(`${e.toLowerCase()}_${r}`)}`)}let a=[];return t.where&&a.push(t.where),a.push(`GROUP BY ${r.join(`, `)}`),t.minCount&&t.minCount>1&&a.push(`HAVING COUNT(*) >= ${Math.floor(t.minCount)}`),a.push(`ORDER BY COUNT(*) DESC`),t.limit>0&&a.push(e.limitClause(t.limit)),e.getQuery(`SELECT_TABLE`,t.database,t.table,i.join(`, `),a.join(` `))}function C(e){let t=new Set;for(let n of e){let e=n.columns[0];e&&t.add(e.toLowerCase())}return t}function w(e,t){return t.has(e.toLowerCase())}function de(e,t){let n=C(t);return e.some(e=>w(e,n))}var T=a(),E=`none`,fe=/\b(int|dec|numeric|number|float|double|real|money|serial)/i;function D(){let{t:e}=i(),n=p(e=>e.activeDialog),a=p(e=>e.closeDialog),x=m(`group-by`),D=n===`group-by`,O=f(e=>e.activeConnections),pe=f(e=>e.activeConnectionId),me=(0,b.useMemo)(()=>O.filter(e=>e.serverConnectionId),[O]),[k,he]=(0,b.useState)(()=>x?.connectionId??pe??``),[A,j]=(0,b.useState)(()=>x?.database??``),[M,N]=(0,b.useState)(()=>x?.table??``),[P,F]=(0,b.useState)([]),[I,L]=(0,b.useState)([]),R=x&&k===x.connectionId&&A===x.database&&M===x.table?x.where??``:``,[z,ge]=(0,b.useState)([]),[B,_e]=(0,b.useState)([]),[V,H]=(0,b.useState)(()=>x?.column?[x.column]:[]),[U,ve]=(0,b.useState)(E),[W,ye]=(0,b.useState)(``),[G,be]=(0,b.useState)(`1`),[K,xe]=(0,b.useState)(!0),[q,J]=(0,b.useState)(``),[Se,Y]=(0,b.useState)(!1),X=e=>f.getState().activeConnections.find(t=>t.id===e)?.serverConnectionId;(0,b.useEffect)(()=>{if(!D||!k)return;let e=X(k);if(!e)return;let t=!1;return(async()=>{try{let n=await g(k).introspect.listDatabases(h(e));if(t)return;F(n),j(e=>e&&n.includes(e)?e:n[0]??``)}catch(e){t||J(e instanceof Error?e.message:String(e))}})(),()=>{t=!0}},[D,k]),(0,b.useEffect)(()=>{if(!D||!k||!A)return;let e=X(k);if(!e)return;let t=!1;return(async()=>{try{let n=await g(k).introspect.listTables(h(e),A);if(t)return;let r=n.map(e=>e.name);L(r),N(e=>e&&r.includes(e)?e:r[0]??``)}catch(e){t||J(e instanceof Error?e.message:String(e))}})(),()=>{t=!0}},[D,k,A]),(0,b.useEffect)(()=>{if(!D||!k||!M)return;let e=X(k);if(!e)return;let t=!1;return(async()=>{let n=h(e),r=g(k).introspect;try{let[e,i]=await Promise.all([r.listColumns(n,A,M),r.listIndexes(n,A,M).catch(()=>[])]);if(t)return;ge(e),_e(i),H(t=>t.filter(t=>e.some(e=>e.name===t)))}catch(e){t||J(e instanceof Error?e.message:String(e))}})(),()=>{t=!0}},[D,k,A,M]);let Ce=(0,b.useMemo)(()=>C(B),[B]),we=(0,b.useMemo)(()=>z.filter(e=>fe.test(e.type)),[z]),Z=(0,b.useMemo)(()=>!k||V.length===0?``:S(g(k),{database:A,table:M,columns:V,aggregate:U!==E&&W?{fn:U,column:W}:null,where:K?R:``,minCount:Number(G)||1,limit:_()}),[k,A,M,V,U,W,G,K,R]),Q=V.length>0&&B.length>0&&!de(V,B);function Te(e){H(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])}function $(e){t(`group_by`,{action:e,dbms:g(k).id,columns:V.length,aggregate:U,filtered:!!(K&&R),indexed:!Q})}function Ee(){Z&&($(`open`),y(k,Z,A,e(`database.groupBy.tabTitle`,{table:M})),a())}async function De(){if(!Z)return;$(`run`),Y(!0);let t=y(k,Z,A,e(`database.groupBy.tabTitle`,{table:M}));a();try{await ae(k,t)}finally{Y(!1)}}return(0,T.jsx)(ie,{open:D,onOpenChange:e=>{e||a()},children:(0,T.jsxs)(te,{className:`flex max-h-[85vh] flex-col sm:max-w-[720px]`,children:[(0,T.jsxs)(o,{children:[(0,T.jsx)(ne,{children:e(`database.groupBy.title`)}),(0,T.jsx)(re,{children:e(`database.groupBy.description`,{table:M})})]}),q&&(0,T.jsx)(`p`,{className:`rounded-md border border-destructive/40 px-3 py-2 text-xs text-destructive`,children:q}),(0,T.jsxs)(`div`,{className:`grid grid-cols-3 gap-2`,children:[(0,T.jsxs)(`div`,{className:`space-y-1`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.connection`)}),(0,T.jsxs)(d,{value:k,onValueChange:he,children:[(0,T.jsx)(c,{className:`h-8 text-xs`,children:(0,T.jsx)(s,{})}),(0,T.jsx)(l,{children:me.map(e=>(0,T.jsx)(u,{value:e.id,children:e.hostName||e.host||e.file||e.id},e.id))})]})]}),(0,T.jsxs)(`div`,{className:`space-y-1`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.database`)}),(0,T.jsxs)(d,{value:A,onValueChange:j,children:[(0,T.jsx)(c,{className:`h-8 text-xs`,children:(0,T.jsx)(s,{})}),(0,T.jsx)(l,{children:P.map(e=>(0,T.jsx)(u,{value:e,children:e},e))})]})]}),(0,T.jsxs)(`div`,{className:`space-y-1`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.table`)}),(0,T.jsxs)(d,{value:M,onValueChange:N,children:[(0,T.jsx)(c,{className:`h-8 text-xs`,children:(0,T.jsx)(s,{})}),(0,T.jsx)(l,{children:I.map(e=>(0,T.jsx)(u,{value:e,children:e},e))})]})]})]}),(0,T.jsxs)(`div`,{className:`grid min-h-0 grid-cols-[1fr_1fr] gap-4`,children:[(0,T.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-1.5`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.columns`)}),(0,T.jsx)(le,{className:`h-[260px] rounded-md border`,children:(0,T.jsx)(`ul`,{className:`p-1`,children:z.map(t=>{let n=w(t.name,Ce);return(0,T.jsx)(`li`,{children:(0,T.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 rounded px-2 py-1 text-xs hover:bg-accent`,children:[(0,T.jsx)(`input`,{type:`checkbox`,checked:V.includes(t.name),onChange:()=>Te(t.name)}),(0,T.jsx)(`span`,{className:`truncate font-medium`,children:t.name}),(0,T.jsx)(`span`,{className:`truncate text-muted-foreground`,children:t.type}),n&&(0,T.jsx)(oe,{className:`ml-auto h-3 w-3 shrink-0 text-muted-foreground`,"aria-label":e(`database.groupBy.indexed`)})]})},t.name)})})})]}),(0,T.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,T.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.aggregate`)}),(0,T.jsxs)(`div`,{className:`flex gap-2`,children:[(0,T.jsxs)(d,{value:U,onValueChange:ve,children:[(0,T.jsx)(c,{className:`h-8 w-[110px] text-xs`,children:(0,T.jsx)(s,{})}),(0,T.jsxs)(l,{children:[(0,T.jsx)(u,{value:E,children:e(`database.groupBy.countOnly`)}),ue.map(e=>(0,T.jsx)(u,{value:e,children:e},e))]})]}),(0,T.jsxs)(d,{value:W,onValueChange:ye,disabled:U===E,children:[(0,T.jsx)(c,{className:`h-8 flex-1 text-xs`,children:(0,T.jsx)(s,{placeholder:e(`database.groupBy.column`)})}),(0,T.jsx)(l,{children:we.map(e=>(0,T.jsx)(u,{value:e.name,children:e.name},e.name))})]})]})]}),(0,T.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,T.jsx)(v,{htmlFor:`gb-min`,className:`text-xs`,children:e(`database.groupBy.minCount`)}),(0,T.jsx)(ce,{id:`gb-min`,type:`number`,min:1,value:G,onChange:e=>be(e.target.value),className:`h-8 text-xs`})]}),R&&(0,T.jsxs)(`label`,{className:`flex items-center gap-2 text-xs`,children:[(0,T.jsx)(`input`,{type:`checkbox`,checked:K,onChange:e=>xe(e.target.checked)}),e(`database.groupBy.useFilter`)]}),Q&&(0,T.jsxs)(`p`,{className:`flex gap-1.5 rounded-md border border-dashed px-2 py-1.5 text-xs text-muted-foreground`,children:[(0,T.jsx)(se,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`}),(0,T.jsx)(`span`,{children:e(`database.groupBy.noIndexWarning`)})]})]})]}),(0,T.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,T.jsx)(v,{className:`text-xs`,children:e(`database.groupBy.preview`)}),(0,T.jsx)(`pre`,{className:`max-h-[120px] overflow-auto rounded-md border bg-muted p-2 font-mono text-xs whitespace-pre-wrap`,children:Z||e(`database.groupBy.pickColumn`)})]}),(0,T.jsxs)(ee,{children:[(0,T.jsx)(r,{variant:`outline`,onClick:a,children:e(`command.close`)}),(0,T.jsx)(r,{variant:`outline`,onClick:Ee,disabled:!Z,children:e(`database.groupBy.openInTab`)}),(0,T.jsx)(r,{onClick:De,disabled:!Z||Se,children:e(`database.groupBy.run`)})]})]})})}export{D as GroupByDialog};
@@ -1,4 +1,4 @@
1
- import{r as e}from"./hePW80VL.js";import{o as t,p as n}from"./CYz610vE.js";import{t as r}from"./CiL8zoYm.js";import{i,r as a}from"./Cu_sGzNJ.js";import{a as o,i as s,n as c,o as l,t as u}from"./DzRyVlxz.js";import{a as d,i as f,n as p,r as m,t as h}from"./G06qjCej.js";import{t as g}from"./S7HbowYz.js";import{n as _,t as ee}from"./D8_hwGjG.js";import{a as v}from"./BkXrfAoR.js";import{r as y}from"./BRZhVXRC.js";import{t as te}from"./9gOj-Ty3.js";import{t as b}from"./Bs5VSn0X.js";import{c as x,dt as S,pt as ne}from"./CExE8dKz.js";var C=e(n(),1),w=[`VIEW`,`PROCEDURE`,`FUNCTION`,`TRIGGER`,`EVENT`];function T(e,t){return e.replace(/\bDEFINER\s*=\s*(?:`[^`]*`|'[^']*'|"[^"]*"|\w+)@(?:`[^`]*`|'[^']*'|"[^"]*"|[\w.%-]+)/gi,``).replace(/\bSQL SECURITY (?:DEFINER|INVOKER)\b/gi,``).replace(/\bALGORITHM\s*=\s*\w+/gi,``).replace(RegExp(`[\`"\\[]?${t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}[\`"\\]]?\\.`,`gi`),``).replace(/\s+/g,` `).replace(/;\s*$/,``).trim()}function E(e,t){let n=[];for(let r of w){let i=e.objects?.get(r),a=t.objects?.get(r);if(!i&&!a)continue;let o=[...new Set([...i?.keys()??[],...a?.keys()??[]])].sort();for(let s of o){let o=i?.get(s)??null,c=a?.get(s)??null,l;l=o?c?o.sql!==null&&c.sql!==null&&T(o.sql,e.database)===T(c.sql,t.database)?`identical`:`changed`:`missingInTarget`:`missingInSource`,n.push({type:r,name:s,status:l,source:o,target:c})}}return n}var D=e=>e.toLowerCase().replace(/\s+/g,` `).trim(),O=e=>e===null?null:e.trim().replace(/^'(.*)'(?:::\w+)?$/s,`$1`),k=e=>e.addedColumns.length+e.removedColumns.length+e.changedColumns.length+e.addedIndexes.length+e.removedIndexes.length+e.changedIndexes.length>0;function A(e,t){let n=[];return D(e.type)!==D(t.type)&&n.push(`type`),e.nullable!==t.nullable&&n.push(`nullable`),O(e.defaultValue)!==O(t.defaultValue)&&n.push(`default`),e.extra.toLowerCase()!==t.extra.toLowerCase()&&n.push(`extra`),n}var j=(e,t)=>e.type===t.type&&e.columns.length===t.columns.length&&e.columns.every((e,n)=>e===t.columns[n]);function M(e,t,n){let r=t.columns.get(e)??[],i=n.columns.get(e)??[],a=new Map(i.map(e=>[e.name,e])),o=new Map(r.map(e=>[e.name,e])),s={table:e,addedColumns:r.filter(e=>!a.has(e.name)),removedColumns:i.filter(e=>!o.has(e.name)),changedColumns:[],addedIndexes:[],removedIndexes:[],changedIndexes:[]};for(let e of r){let t=a.get(e.name);if(!t)continue;let n=A(e,t);n.length>0&&s.changedColumns.push({name:e.name,source:e,target:t,attributes:n})}let c=t.indexes.get(e)??[],l=n.indexes.get(e)??[],u=new Map(l.map(e=>[e.name,e])),d=new Map(c.map(e=>[e.name,e]));s.addedIndexes=c.filter(e=>!u.has(e.name)),s.removedIndexes=l.filter(e=>!d.has(e.name));for(let e of c){let t=u.get(e.name);t&&!j(e,t)&&s.changedIndexes.push({name:e.name,source:e,target:t})}return s}function N(e,t){let n=new Set(t.tables),r=new Set(e.tables),i={missingInTarget:[],missingInSource:[],changed:[],identical:[],objects:E(e,t)};for(let r of e.tables){if(!n.has(r)){i.missingInTarget.push(r);continue}let a=M(r,e,t);k(a)?i.changed.push(a):i.identical.push(r)}return i.missingInSource=t.tables.filter(e=>!r.has(e)),i}var P=e=>e.split(`
1
+ import{r as e}from"./hePW80VL.js";import{o as t,p as n}from"./CyX8oVsa.js";import{t as r}from"./Dya0zxo6.js";import{i,r as a}from"./C76CctEl.js";import{a as o,i as s,n as c,o as l,t as u}from"./kTwcxyaO.js";import{a as d,i as f,n as p,r as m,t as h}from"./34iJa-68.js";import{t as g}from"./iz6RnRcO.js";import{n as _,t as ee}from"./BihjBM79.js";import{a as v}from"./BVZGLNq_.js";import{r as y}from"./CH4cEkW4.js";import{t as te}from"./UEkRIZwQ.js";import{t as b}from"./Bs5VSn0X.js";import{c as x,dt as S,pt as ne}from"./D4DxtYTA.js";var C=e(n(),1),w=[`VIEW`,`PROCEDURE`,`FUNCTION`,`TRIGGER`,`EVENT`];function T(e,t){return e.replace(/\bDEFINER\s*=\s*(?:`[^`]*`|'[^']*'|"[^"]*"|\w+)@(?:`[^`]*`|'[^']*'|"[^"]*"|[\w.%-]+)/gi,``).replace(/\bSQL SECURITY (?:DEFINER|INVOKER)\b/gi,``).replace(/\bALGORITHM\s*=\s*\w+/gi,``).replace(RegExp(`[\`"\\[]?${t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}[\`"\\]]?\\.`,`gi`),``).replace(/\s+/g,` `).replace(/;\s*$/,``).trim()}function E(e,t){let n=[];for(let r of w){let i=e.objects?.get(r),a=t.objects?.get(r);if(!i&&!a)continue;let o=[...new Set([...i?.keys()??[],...a?.keys()??[]])].sort();for(let s of o){let o=i?.get(s)??null,c=a?.get(s)??null,l;l=o?c?o.sql!==null&&c.sql!==null&&T(o.sql,e.database)===T(c.sql,t.database)?`identical`:`changed`:`missingInTarget`:`missingInSource`,n.push({type:r,name:s,status:l,source:o,target:c})}}return n}var D=e=>e.toLowerCase().replace(/\s+/g,` `).trim(),O=e=>e===null?null:e.trim().replace(/^'(.*)'(?:::\w+)?$/s,`$1`),k=e=>e.addedColumns.length+e.removedColumns.length+e.changedColumns.length+e.addedIndexes.length+e.removedIndexes.length+e.changedIndexes.length>0;function A(e,t){let n=[];return D(e.type)!==D(t.type)&&n.push(`type`),e.nullable!==t.nullable&&n.push(`nullable`),O(e.defaultValue)!==O(t.defaultValue)&&n.push(`default`),e.extra.toLowerCase()!==t.extra.toLowerCase()&&n.push(`extra`),n}var j=(e,t)=>e.type===t.type&&e.columns.length===t.columns.length&&e.columns.every((e,n)=>e===t.columns[n]);function M(e,t,n){let r=t.columns.get(e)??[],i=n.columns.get(e)??[],a=new Map(i.map(e=>[e.name,e])),o=new Map(r.map(e=>[e.name,e])),s={table:e,addedColumns:r.filter(e=>!a.has(e.name)),removedColumns:i.filter(e=>!o.has(e.name)),changedColumns:[],addedIndexes:[],removedIndexes:[],changedIndexes:[]};for(let e of r){let t=a.get(e.name);if(!t)continue;let n=A(e,t);n.length>0&&s.changedColumns.push({name:e.name,source:e,target:t,attributes:n})}let c=t.indexes.get(e)??[],l=n.indexes.get(e)??[],u=new Map(l.map(e=>[e.name,e])),d=new Map(c.map(e=>[e.name,e]));s.addedIndexes=c.filter(e=>!u.has(e.name)),s.removedIndexes=l.filter(e=>!d.has(e.name));for(let e of c){let t=u.get(e.name);t&&!j(e,t)&&s.changedIndexes.push({name:e.name,source:e,target:t})}return s}function N(e,t){let n=new Set(t.tables),r=new Set(e.tables),i={missingInTarget:[],missingInSource:[],changed:[],identical:[],objects:E(e,t)};for(let r of e.tables){if(!n.has(r)){i.missingInTarget.push(r);continue}let a=M(r,e,t);k(a)?i.changed.push(a):i.identical.push(r)}return i.missingInSource=t.tables.filter(e=>!r.has(e)),i}var P=e=>e.split(`
2
2
  `).map(e=>`-- ${e}`).join(`
3
3
  `);function F(e,t,n,r,i={}){let a=n.ddl,o=r.database,s=e=>i.includeDrops?e:P(e),c=[`-- Schema sync: ${t.database} -> ${o} (${n.label})`,`-- Review before running. Statements that drop data are commented out unless "Include DROP statements" was checked.`,``];for(let r of e.missingInTarget)c.push(`-- Table ${r} is missing in the target`),c.push(I(r,t,n,o)),c.push(``);for(let t of e.changed){c.push(`-- Table ${t.table}`);for(let e of t.removedIndexes)c.push(s(a.dropIndex(o,t.table,e.name)));for(let e of t.changedIndexes)c.push(s(a.dropIndex(o,t.table,e.name)));for(let e of t.addedColumns)c.push(a.addColumn(o,t.table,e));for(let e of t.changedColumns){let r=a.alterColumn(o,t.table,e.source);c.push(r??P(`${n.label} cannot alter column ${e.name} in place (${e.attributes.join(`, `)}): recreate the table`))}for(let e of t.removedColumns)c.push(s(a.dropColumn(o,t.table,e.name)));for(let e of t.addedIndexes)c.push(a.createIndex(o,t.table,e));for(let e of t.changedIndexes)c.push(a.createIndex(o,t.table,e.source));c.push(``)}for(let t of e.missingInSource)c.push(`-- Table ${t} exists only in the target`),c.push(s(`DROP TABLE ${n.qualify(o,t)};`)),c.push(``);for(let t of e.objects){if(t.status===`identical`)continue;let e=`${t.type.charAt(0)}${t.type.slice(1).toLowerCase()} ${t.name}`,r=R(n,o,t);t.status===`missingInSource`?(c.push(`-- ${e} exists only in the target`),c.push(s(r))):(c.push(t.status===`changed`?`-- ${e} differs; recreated from the source`:`-- ${e} is missing in the target`),t.status===`changed`&&c.push(s(r)),c.push(t.source?.sql?z(t.source.sql):P(`the source engine did not return a CREATE statement for ${e}`))),c.push(``)}return c.join(`
4
4
  `).replace(/\n{3,}/g,`
@@ -1 +1 @@
1
- import{r as e}from"./hePW80VL.js";import{o as t,p as n}from"./CYz610vE.js";import{t as r}from"./CiL8zoYm.js";import{i,r as a}from"./Cu_sGzNJ.js";import{a as o,i as s,n as c,o as l,t as u}from"./DzRyVlxz.js";import{a as d,i as f,n as p,r as m,t as h}from"./G06qjCej.js";import{t as g}from"./S7HbowYz.js";import{n as _,t as ee}from"./D8_hwGjG.js";import{a as v}from"./BkXrfAoR.js";import{r as y}from"./BRZhVXRC.js";import{t as te}from"./9gOj-Ty3.js";import{G as b,_ as x,c as S,g as C,pt as ne,v as re}from"./CExE8dKz.js";var w=e(n(),1),T=a(),E=e=>e instanceof Error?e.message:String(e),D=e=>e.hostName||e.host||e.file||e.id,O=5e4;function k({id:e,label:t,side:n,onChange:r,connections:a,disabled:o}){let{t:s}=i(),[c,l]=(0,w.useState)([]),[u,g]=(0,w.useState)([]),_=a.find(e=>e.id===n.connectionId);return(0,w.useEffect)(()=>{if(!_?.serverConnectionId)return;let e=!1;return(async()=>{try{let t=await y(_.id).introspect.listDatabases(v(_.serverConnectionId));if(e)return;l(t),t.includes(n.database)||r({connectionId:_.id,database:t[0]??``,table:``})}catch{e||l([])}})(),()=>{e=!0}},[_?.id,_?.serverConnectionId]),(0,w.useEffect)(()=>{if(!_?.serverConnectionId||!n.database)return;let e=!1;return(async()=>{try{let t=await y(_.id).introspect.listTables(v(_.serverConnectionId),n.database);if(e)return;let i=t.map(e=>e.name);g(i),n.table&&!i.includes(n.table)&&r({...n,table:``})}catch{e||g([])}})(),()=>{e=!0}},[_?.id,_?.serverConnectionId,n.database]),(0,T.jsxs)(`div`,{className:`space-y-2 rounded-md border p-3`,children:[(0,T.jsx)(S,{className:`font-medium`,children:t}),(0,T.jsxs)(h,{value:n.connectionId,onValueChange:e=>r({connectionId:e,database:``,table:``}),disabled:o,children:[(0,T.jsx)(f,{id:`${e}-conn`,className:`w-full`,children:(0,T.jsx)(d,{placeholder:s(`database.diff.pickConnection`)})}),(0,T.jsx)(p,{children:a.map(e=>(0,T.jsx)(m,{value:e.id,children:D(e)},e.id))})]}),(0,T.jsxs)(h,{value:n.database,onValueChange:e=>r({...n,database:e,table:``}),disabled:o||c.length===0,children:[(0,T.jsx)(f,{id:`${e}-db`,className:`w-full`,children:(0,T.jsx)(d,{placeholder:s(`database.diff.pickDatabase`)})}),(0,T.jsx)(p,{children:c.map(e=>(0,T.jsx)(m,{value:e,children:e},e))})]}),(0,T.jsxs)(h,{value:n.table,onValueChange:e=>r({...n,table:e}),disabled:o||u.length===0,children:[(0,T.jsx)(f,{id:`${e}-table`,className:`w-full`,children:(0,T.jsx)(d,{placeholder:s(`database.dataDiff.pickTable`)})}),(0,T.jsx)(p,{children:u.map(e=>(0,T.jsx)(m,{value:e,children:e},e))})]})]})}async function A(e,t){let n=await b({connectionId:e.connectionId,database:e.database,table:e.table,limit:O,onProgress:t}),r=[];for await(let e of n.pages)r.push(...e);return{rows:r,columns:n.fields.map(e=>e.name),capped:r.length>=O}}function j({diff:e,row:t,other:n,changed:r}){let{t:a}=i(),o=[...e.keyColumns,...e.compareColumns];return(0,T.jsxs)(`table`,{className:`w-full text-xs font-mono`,children:[(0,T.jsx)(`thead`,{className:`text-muted-foreground`,children:(0,T.jsxs)(`tr`,{children:[(0,T.jsx)(`th`,{className:`text-left font-normal pr-2`,children:a(`database.diff.column`)}),(0,T.jsx)(`th`,{className:`text-left font-normal pr-2`,children:a(`database.diff.source`)}),(0,T.jsx)(`th`,{className:`text-left font-normal`,children:a(`database.diff.target`)})]})}),(0,T.jsx)(`tbody`,{children:o.map(e=>(0,T.jsxs)(`tr`,{className:r?.includes(e)?`text-amber-600 dark:text-amber-400`:``,children:[(0,T.jsx)(`td`,{className:`pr-2 align-top whitespace-nowrap`,children:e}),(0,T.jsx)(`td`,{className:`pr-2 align-top break-all`,children:x(t[e])}),(0,T.jsx)(`td`,{className:`align-top break-all`,children:n?x(n[e]):`—`})]},e))})]})}function M(){let{t:e}=i(),n=_(e=>e.activeDialog),a=_(e=>e.closeDialog),d=ee(`data-diff`),f=g(e=>e.activeConnections),p=(0,w.useMemo)(()=>f.filter(e=>e.serverConnectionId),[f]),m=g(e=>e.activeConnectionId),h=n===`data-diff`,[b,S]=(0,w.useState)(()=>d&&p.some(e=>e.id===d.connectionId)?{connectionId:d.connectionId,database:d.database,table:d.table}:{connectionId:m&&p.some(e=>e.id===m)?m:p[0]?.id??``,database:``,table:``}),[D,M]=(0,w.useState)(()=>({connectionId:p.find(e=>e.id!==b.connectionId)?.id??b.connectionId,database:``,table:``})),[N,ie]=(0,w.useState)([]),[P,F]=(0,w.useState)(null),[I,L]=(0,w.useState)(!1),[R,z]=(0,w.useState)(`changed`),[B,V]=(0,w.useState)(0),[H,ae]=(0,w.useState)(!1),[U,W]=(0,w.useState)(!1),[G,K]=(0,w.useState)({source:null,target:null}),[q,J]=(0,w.useState)(null),oe=e=>M(e.database&&!e.table&&b.table?{...e,table:b.table}:e),Y=b.connectionId===D.connectionId&&b.database===D.database&&b.table===D.table,se=!!b.table&&!!D.table&&!Y,X=D.connectionId?y(D.connectionId):null;async function ce(){W(!0),J(null),F(null);try{let n=g.getState().activeConnections.find(e=>e.id===b.connectionId);if(!n?.serverConnectionId)throw Error(e(`services.query.notConnected`));let r=await y(b.connectionId).introspect.getPrimaryKeys(v(n.serverConnectionId),b.database,b.table);if(r.length===0)throw Error(e(`database.dataDiff.noPrimaryKey`,{table:b.table}));K({source:{loaded:0,total:null},target:{loaded:0,total:null}});let[i,a]=await Promise.all([A(b,e=>K(t=>({...t,source:e}))),A(D,e=>K(t=>({...t,target:e})))]);if(r.some(e=>!a.columns.includes(e)))throw Error(e(`database.dataDiff.keyMissingInTarget`,{columns:r.join(`, `)}));let o=re(i.rows,a.rows,r,i.columns,a.columns);ie(r),L(i.capped||a.capped),F(o),z(o.changed.length>0?`changed`:o.added.length>0?`added`:`removed`),V(0),te(`compare_data`),t(`data_diff`,{source_dbms:y(b.connectionId).id,target_dbms:X?.id??`unknown`,added:o.added.length,changed:o.changed.length,removed:o.removed.length})}catch(e){J(E(e))}finally{W(!1),K({source:null,target:null})}}let Z=e=>e?e.total===null?e.loaded.toLocaleString():`${e.loaded.toLocaleString()} / ${e.total.toLocaleString()}`:``,Q=(0,w.useMemo)(()=>P&&X?C(P,X,{database:D.database,table:D.table},{includeDeletes:H}):``,[P,X,D.database,D.table,H]);function le(){Q&&(ne(D.connectionId,Q,D.database,e(`database.dataDiff.tabTitle`,{table:D.table})),a())}let $=P?R===`added`?P.added:R===`removed`?P.removed:P.changed.map(e=>e.source):[],ue=!!P&&P.added.length+P.changed.length+P.removed.length>0,de=e=>N.map(t=>x(e[t])).join(`, `);return(0,T.jsx)(u,{open:h,onOpenChange:e=>{e||a()},children:(0,T.jsxs)(c,{className:`sm:max-w-[900px]`,children:[(0,T.jsx)(o,{children:(0,T.jsx)(l,{children:e(`database.dataDiff.title`)})}),(0,T.jsxs)(`div`,{className:`space-y-3`,children:[(0,T.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,T.jsx)(k,{id:`ddiff-source`,label:e(`database.diff.source`),side:b,onChange:S,connections:p,disabled:U}),(0,T.jsx)(k,{id:`ddiff-target`,label:e(`database.diff.target`),side:D,onChange:oe,connections:p,disabled:U})]}),(0,T.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`database.dataDiff.hint`,{cap:O.toLocaleString()})}),Y&&b.table&&(0,T.jsx)(`p`,{className:`text-xs text-destructive`,children:e(`database.dataDiff.sameSide`)}),q&&(0,T.jsx)(`p`,{className:`text-sm text-destructive whitespace-pre-wrap`,children:q}),U&&(G.source||G.target)&&(0,T.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`database.dataDiff.loading`,{source:Z(G.source),target:Z(G.target)})}),P&&(0,T.jsxs)(`div`,{className:`space-y-2`,children:[(0,T.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 text-xs`,children:[(0,T.jsx)(`span`,{className:`text-muted-foreground`,children:e(`database.dataDiff.summary`,{key:N.join(`, `),added:P.added.length,changed:P.changed.length,removed:P.removed.length,identical:P.identical})}),I&&(0,T.jsx)(`span`,{className:`text-amber-600 dark:text-amber-400`,children:e(`database.dataDiff.capped`,{cap:O.toLocaleString()})}),(P.sourceOnlyColumns.length>0||P.targetOnlyColumns.length>0)&&(0,T.jsx)(`span`,{className:`text-muted-foreground`,children:e(`database.dataDiff.ignoredColumns`,{columns:[...P.sourceOnlyColumns,...P.targetOnlyColumns].join(`, `)})})]}),(0,T.jsx)(`div`,{className:`flex gap-1 text-xs`,children:[`added`,`changed`,`removed`].map(t=>(0,T.jsx)(`button`,{type:`button`,onClick:()=>{z(t),V(0)},className:`rounded border px-2 py-0.5 ${R===t?`bg-accent`:``}`,children:e(`database.dataDiff.${t}`,{count:t===`added`?P.added.length:t===`removed`?P.removed.length:P.changed.length})},t))}),(0,T.jsxs)(`div`,{className:`grid grid-cols-[240px_1fr] gap-3 h-[280px]`,children:[(0,T.jsxs)(`ul`,{className:`overflow-auto rounded-md border text-sm font-mono`,children:[$.slice(0,2e3).map((e,t)=>(0,T.jsx)(`li`,{className:`px-2 py-1 cursor-pointer ${B===t?`bg-accent`:``}`,onClick:()=>V(t),children:de(e)},t)),$.length===0&&(0,T.jsx)(`li`,{className:`px-2 py-1 text-muted-foreground`,children:e(`database.dataDiff.none`)}),$.length>2e3&&(0,T.jsx)(`li`,{className:`px-2 py-1 text-muted-foreground`,children:e(`database.dataDiff.more`,{count:$.length-2e3})})]}),(0,T.jsx)(`div`,{className:`overflow-auto rounded-md border p-2`,children:$[B]?R===`changed`?(0,T.jsx)(j,{diff:P,row:P.changed[B].source,other:P.changed[B].target,changed:P.changed[B].columns}):R===`removed`?(0,T.jsx)(j,{diff:P,row:{},other:$[B]}):(0,T.jsx)(j,{diff:P,row:$[B]}):(0,T.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`database.diff.selectTable`)})})]}),(0,T.jsxs)(`label`,{className:`flex items-center gap-1.5 text-xs cursor-pointer`,children:[(0,T.jsx)(`input`,{type:`checkbox`,checked:H,onChange:e=>ae(e.target.checked)}),(0,T.jsx)(`span`,{className:H?`text-destructive`:``,children:e(`database.dataDiff.includeDeletes`)})]})]})]}),(0,T.jsxs)(s,{children:[(0,T.jsx)(r,{variant:`outline`,onClick:a,children:e(`database.diff.close`)}),(0,T.jsx)(r,{variant:`secondary`,onClick:()=>{ce()},disabled:!se||U,children:e(U?`database.diff.comparing`:`database.diff.compare`)}),(0,T.jsx)(r,{onClick:le,disabled:!ue,children:e(`database.diff.openScript`)})]})]})})}export{M as DataDiffDialog};
1
+ import{r as e}from"./hePW80VL.js";import{o as t,p as n}from"./CyX8oVsa.js";import{t as r}from"./Dya0zxo6.js";import{i,r as a}from"./C76CctEl.js";import{a as o,i as s,n as c,o as l,t as u}from"./kTwcxyaO.js";import{a as d,i as f,n as p,r as m,t as h}from"./34iJa-68.js";import{t as g}from"./iz6RnRcO.js";import{n as _,t as ee}from"./BihjBM79.js";import{a as v}from"./BVZGLNq_.js";import{r as y}from"./CH4cEkW4.js";import{t as te}from"./UEkRIZwQ.js";import{G as b,_ as x,c as S,g as C,pt as ne,v as re}from"./D4DxtYTA.js";var w=e(n(),1),T=a(),E=e=>e instanceof Error?e.message:String(e),D=e=>e.hostName||e.host||e.file||e.id,O=5e4;function k({id:e,label:t,side:n,onChange:r,connections:a,disabled:o}){let{t:s}=i(),[c,l]=(0,w.useState)([]),[u,g]=(0,w.useState)([]),_=a.find(e=>e.id===n.connectionId);return(0,w.useEffect)(()=>{if(!_?.serverConnectionId)return;let e=!1;return(async()=>{try{let t=await y(_.id).introspect.listDatabases(v(_.serverConnectionId));if(e)return;l(t),t.includes(n.database)||r({connectionId:_.id,database:t[0]??``,table:``})}catch{e||l([])}})(),()=>{e=!0}},[_?.id,_?.serverConnectionId]),(0,w.useEffect)(()=>{if(!_?.serverConnectionId||!n.database)return;let e=!1;return(async()=>{try{let t=await y(_.id).introspect.listTables(v(_.serverConnectionId),n.database);if(e)return;let i=t.map(e=>e.name);g(i),n.table&&!i.includes(n.table)&&r({...n,table:``})}catch{e||g([])}})(),()=>{e=!0}},[_?.id,_?.serverConnectionId,n.database]),(0,T.jsxs)(`div`,{className:`space-y-2 rounded-md border p-3`,children:[(0,T.jsx)(S,{className:`font-medium`,children:t}),(0,T.jsxs)(h,{value:n.connectionId,onValueChange:e=>r({connectionId:e,database:``,table:``}),disabled:o,children:[(0,T.jsx)(f,{id:`${e}-conn`,className:`w-full`,children:(0,T.jsx)(d,{placeholder:s(`database.diff.pickConnection`)})}),(0,T.jsx)(p,{children:a.map(e=>(0,T.jsx)(m,{value:e.id,children:D(e)},e.id))})]}),(0,T.jsxs)(h,{value:n.database,onValueChange:e=>r({...n,database:e,table:``}),disabled:o||c.length===0,children:[(0,T.jsx)(f,{id:`${e}-db`,className:`w-full`,children:(0,T.jsx)(d,{placeholder:s(`database.diff.pickDatabase`)})}),(0,T.jsx)(p,{children:c.map(e=>(0,T.jsx)(m,{value:e,children:e},e))})]}),(0,T.jsxs)(h,{value:n.table,onValueChange:e=>r({...n,table:e}),disabled:o||u.length===0,children:[(0,T.jsx)(f,{id:`${e}-table`,className:`w-full`,children:(0,T.jsx)(d,{placeholder:s(`database.dataDiff.pickTable`)})}),(0,T.jsx)(p,{children:u.map(e=>(0,T.jsx)(m,{value:e,children:e},e))})]})]})}async function A(e,t){let n=await b({connectionId:e.connectionId,database:e.database,table:e.table,limit:O,onProgress:t}),r=[];for await(let e of n.pages)r.push(...e);return{rows:r,columns:n.fields.map(e=>e.name),capped:r.length>=O}}function j({diff:e,row:t,other:n,changed:r}){let{t:a}=i(),o=[...e.keyColumns,...e.compareColumns];return(0,T.jsxs)(`table`,{className:`w-full text-xs font-mono`,children:[(0,T.jsx)(`thead`,{className:`text-muted-foreground`,children:(0,T.jsxs)(`tr`,{children:[(0,T.jsx)(`th`,{className:`text-left font-normal pr-2`,children:a(`database.diff.column`)}),(0,T.jsx)(`th`,{className:`text-left font-normal pr-2`,children:a(`database.diff.source`)}),(0,T.jsx)(`th`,{className:`text-left font-normal`,children:a(`database.diff.target`)})]})}),(0,T.jsx)(`tbody`,{children:o.map(e=>(0,T.jsxs)(`tr`,{className:r?.includes(e)?`text-amber-600 dark:text-amber-400`:``,children:[(0,T.jsx)(`td`,{className:`pr-2 align-top whitespace-nowrap`,children:e}),(0,T.jsx)(`td`,{className:`pr-2 align-top break-all`,children:x(t[e])}),(0,T.jsx)(`td`,{className:`align-top break-all`,children:n?x(n[e]):`—`})]},e))})]})}function M(){let{t:e}=i(),n=_(e=>e.activeDialog),a=_(e=>e.closeDialog),d=ee(`data-diff`),f=g(e=>e.activeConnections),p=(0,w.useMemo)(()=>f.filter(e=>e.serverConnectionId),[f]),m=g(e=>e.activeConnectionId),h=n===`data-diff`,[b,S]=(0,w.useState)(()=>d&&p.some(e=>e.id===d.connectionId)?{connectionId:d.connectionId,database:d.database,table:d.table}:{connectionId:m&&p.some(e=>e.id===m)?m:p[0]?.id??``,database:``,table:``}),[D,M]=(0,w.useState)(()=>({connectionId:p.find(e=>e.id!==b.connectionId)?.id??b.connectionId,database:``,table:``})),[N,ie]=(0,w.useState)([]),[P,F]=(0,w.useState)(null),[I,L]=(0,w.useState)(!1),[R,z]=(0,w.useState)(`changed`),[B,V]=(0,w.useState)(0),[H,ae]=(0,w.useState)(!1),[U,W]=(0,w.useState)(!1),[G,K]=(0,w.useState)({source:null,target:null}),[q,J]=(0,w.useState)(null),oe=e=>M(e.database&&!e.table&&b.table?{...e,table:b.table}:e),Y=b.connectionId===D.connectionId&&b.database===D.database&&b.table===D.table,se=!!b.table&&!!D.table&&!Y,X=D.connectionId?y(D.connectionId):null;async function ce(){W(!0),J(null),F(null);try{let n=g.getState().activeConnections.find(e=>e.id===b.connectionId);if(!n?.serverConnectionId)throw Error(e(`services.query.notConnected`));let r=await y(b.connectionId).introspect.getPrimaryKeys(v(n.serverConnectionId),b.database,b.table);if(r.length===0)throw Error(e(`database.dataDiff.noPrimaryKey`,{table:b.table}));K({source:{loaded:0,total:null},target:{loaded:0,total:null}});let[i,a]=await Promise.all([A(b,e=>K(t=>({...t,source:e}))),A(D,e=>K(t=>({...t,target:e})))]);if(r.some(e=>!a.columns.includes(e)))throw Error(e(`database.dataDiff.keyMissingInTarget`,{columns:r.join(`, `)}));let o=re(i.rows,a.rows,r,i.columns,a.columns);ie(r),L(i.capped||a.capped),F(o),z(o.changed.length>0?`changed`:o.added.length>0?`added`:`removed`),V(0),te(`compare_data`),t(`data_diff`,{source_dbms:y(b.connectionId).id,target_dbms:X?.id??`unknown`,added:o.added.length,changed:o.changed.length,removed:o.removed.length})}catch(e){J(E(e))}finally{W(!1),K({source:null,target:null})}}let Z=e=>e?e.total===null?e.loaded.toLocaleString():`${e.loaded.toLocaleString()} / ${e.total.toLocaleString()}`:``,Q=(0,w.useMemo)(()=>P&&X?C(P,X,{database:D.database,table:D.table},{includeDeletes:H}):``,[P,X,D.database,D.table,H]);function le(){Q&&(ne(D.connectionId,Q,D.database,e(`database.dataDiff.tabTitle`,{table:D.table})),a())}let $=P?R===`added`?P.added:R===`removed`?P.removed:P.changed.map(e=>e.source):[],ue=!!P&&P.added.length+P.changed.length+P.removed.length>0,de=e=>N.map(t=>x(e[t])).join(`, `);return(0,T.jsx)(u,{open:h,onOpenChange:e=>{e||a()},children:(0,T.jsxs)(c,{className:`sm:max-w-[900px]`,children:[(0,T.jsx)(o,{children:(0,T.jsx)(l,{children:e(`database.dataDiff.title`)})}),(0,T.jsxs)(`div`,{className:`space-y-3`,children:[(0,T.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,T.jsx)(k,{id:`ddiff-source`,label:e(`database.diff.source`),side:b,onChange:S,connections:p,disabled:U}),(0,T.jsx)(k,{id:`ddiff-target`,label:e(`database.diff.target`),side:D,onChange:oe,connections:p,disabled:U})]}),(0,T.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`database.dataDiff.hint`,{cap:O.toLocaleString()})}),Y&&b.table&&(0,T.jsx)(`p`,{className:`text-xs text-destructive`,children:e(`database.dataDiff.sameSide`)}),q&&(0,T.jsx)(`p`,{className:`text-sm text-destructive whitespace-pre-wrap`,children:q}),U&&(G.source||G.target)&&(0,T.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`database.dataDiff.loading`,{source:Z(G.source),target:Z(G.target)})}),P&&(0,T.jsxs)(`div`,{className:`space-y-2`,children:[(0,T.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 text-xs`,children:[(0,T.jsx)(`span`,{className:`text-muted-foreground`,children:e(`database.dataDiff.summary`,{key:N.join(`, `),added:P.added.length,changed:P.changed.length,removed:P.removed.length,identical:P.identical})}),I&&(0,T.jsx)(`span`,{className:`text-amber-600 dark:text-amber-400`,children:e(`database.dataDiff.capped`,{cap:O.toLocaleString()})}),(P.sourceOnlyColumns.length>0||P.targetOnlyColumns.length>0)&&(0,T.jsx)(`span`,{className:`text-muted-foreground`,children:e(`database.dataDiff.ignoredColumns`,{columns:[...P.sourceOnlyColumns,...P.targetOnlyColumns].join(`, `)})})]}),(0,T.jsx)(`div`,{className:`flex gap-1 text-xs`,children:[`added`,`changed`,`removed`].map(t=>(0,T.jsx)(`button`,{type:`button`,onClick:()=>{z(t),V(0)},className:`rounded border px-2 py-0.5 ${R===t?`bg-accent`:``}`,children:e(`database.dataDiff.${t}`,{count:t===`added`?P.added.length:t===`removed`?P.removed.length:P.changed.length})},t))}),(0,T.jsxs)(`div`,{className:`grid grid-cols-[240px_1fr] gap-3 h-[280px]`,children:[(0,T.jsxs)(`ul`,{className:`overflow-auto rounded-md border text-sm font-mono`,children:[$.slice(0,2e3).map((e,t)=>(0,T.jsx)(`li`,{className:`px-2 py-1 cursor-pointer ${B===t?`bg-accent`:``}`,onClick:()=>V(t),children:de(e)},t)),$.length===0&&(0,T.jsx)(`li`,{className:`px-2 py-1 text-muted-foreground`,children:e(`database.dataDiff.none`)}),$.length>2e3&&(0,T.jsx)(`li`,{className:`px-2 py-1 text-muted-foreground`,children:e(`database.dataDiff.more`,{count:$.length-2e3})})]}),(0,T.jsx)(`div`,{className:`overflow-auto rounded-md border p-2`,children:$[B]?R===`changed`?(0,T.jsx)(j,{diff:P,row:P.changed[B].source,other:P.changed[B].target,changed:P.changed[B].columns}):R===`removed`?(0,T.jsx)(j,{diff:P,row:{},other:$[B]}):(0,T.jsx)(j,{diff:P,row:$[B]}):(0,T.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`database.diff.selectTable`)})})]}),(0,T.jsxs)(`label`,{className:`flex items-center gap-1.5 text-xs cursor-pointer`,children:[(0,T.jsx)(`input`,{type:`checkbox`,checked:H,onChange:e=>ae(e.target.checked)}),(0,T.jsx)(`span`,{className:H?`text-destructive`:``,children:e(`database.dataDiff.includeDeletes`)})]})]})]}),(0,T.jsxs)(s,{children:[(0,T.jsx)(r,{variant:`outline`,onClick:a,children:e(`database.diff.close`)}),(0,T.jsx)(r,{variant:`secondary`,onClick:()=>{ce()},disabled:!se||U,children:e(U?`database.diff.comparing`:`database.diff.compare`)}),(0,T.jsx)(r,{onClick:le,disabled:!ue,children:e(`database.diff.openScript`)})]})]})})}export{M as DataDiffDialog};
@@ -1,4 +1,4 @@
1
- import{a as e}from"./BDtsGuIR.js";import{t}from"./Nro86Y63.js";import{t as n}from"./Bit0Kfog.js";var r=`http://127.0.0.1:8888`,i=n(`tunnelAgent`,()=>({url:null,token:null}));function a(e){i.url=e.url?.replace(/\/+$/,``)||null,i.token=e.token?.trim()||null}var o=new Set([`127.0.0.1`,`localhost`,`[::1]`,`::1`]);function s(e){try{let t=new URL(e);return(t.protocol===`http:`||t.protocol===`https:`)&&o.has(t.hostname)}catch{return!1}}function c(e){try{return typeof window<`u`&&new URL(e).origin===window.location.origin}catch{return!1}}function l(e){return s(e)||c(e)}function u(){return i.url!==null&&i.url!==`/api`&&!l(i.url)}function d(){return i.url??r}function f(){let t=d();return t===`/api`?e.t(`services.agent.devProxyUrl`,{url:`http://localhost:8888`}):t}async function p(){let t=f(),n;try{let e={};i.token&&(e.Authorization=`Bearer ${i.token}`),n=await(await fetch(`${d()}/health`,{cache:`no-store`,headers:e})).json()}catch(e){return{state:`offline`,url:t,message:e instanceof Error?e.message:String(e)}}if(n.name!==`planche`||typeof n.version!=`string`||!/^[\w.+-]{1,32}$/.test(n.version))return{state:`offline`,url:t,message:e.t(`services.agent.notPlanche`)};let r=n.install===`standalone`?`standalone`:`npx`;return n.protocolVersion===2?n.authorized===!1||i.token===null&&n.authorized===void 0?{state:`unauthorized`,url:t,version:n.version,install:r}:{state:`online`,url:t,version:n.version,activeConnections:n.activeConnections??0,install:r,...n.gateway?{gateway:n.gateway}:{}}:{state:`outdated`,url:t,version:n.version,protocolVersion:n.protocolVersion??0,install:r}}async function m(){let t=await fetch(`${d()}/profiles`,{cache:`no-store`,headers:M()}),n=await t.json().catch(()=>null);if(!t.ok||!n||n.success!==!0)throw new N(n?.message??e.t(`services.agent.httpError`,{status:t.status,statusText:t.statusText}),t.status);return n}async function h(){return E(`/ai/config`,{method:`GET`})}async function g(e){return E(`/ai/config`,{method:`PUT`,body:JSON.stringify(e)})}async function _(){return E(`/ai/config`,{method:`DELETE`})}async function v(){try{return(await(await fetch(`${d()}/health`,{cache:`no-store`,headers:M()})).json()).ai?.tools===!0}catch{return!1}}async function y(e){await E(`/bridge/tools`,{method:`POST`,body:JSON.stringify({tools:e})})}async function b(e,t,n){await E(`/bridge/result`,{method:`POST`,body:JSON.stringify({id:e,content:t,isError:n})})}async function x(t,n){let r=new AbortController,i=await fetch(`${d()}/bridge/events`,{headers:M(),signal:r.signal,cache:`no-store`});if(!i.ok||!i.body)throw new N(e.t(`services.agent.httpError`,{status:i.status,statusText:i.statusText}),i.status);return(async()=>{let e=i.body.getReader(),r=new TextDecoder,a=``;try{for(;;){let{done:n,value:i}=await e.read();if(n)break;a+=r.decode(i,{stream:!0});let o=a.indexOf(`
1
+ import{a as e}from"./Cme0nCT7.js";import{t}from"./Nro86Y63.js";import{t as n}from"./Bit0Kfog.js";var r=`http://127.0.0.1:8888`,i=n(`tunnelAgent`,()=>({url:null,token:null}));function a(e){i.url=e.url?.replace(/\/+$/,``)||null,i.token=e.token?.trim()||null}var o=new Set([`127.0.0.1`,`localhost`,`[::1]`,`::1`]);function s(e){try{let t=new URL(e);return(t.protocol===`http:`||t.protocol===`https:`)&&o.has(t.hostname)}catch{return!1}}function c(e){try{return typeof window<`u`&&new URL(e).origin===window.location.origin}catch{return!1}}function l(e){return s(e)||c(e)}function u(){return i.url!==null&&i.url!==`/api`&&!l(i.url)}function d(){return i.url??r}function f(){let t=d();return t===`/api`?e.t(`services.agent.devProxyUrl`,{url:`http://localhost:8888`}):t}async function p(){let t=f(),n;try{let e={};i.token&&(e.Authorization=`Bearer ${i.token}`),n=await(await fetch(`${d()}/health`,{cache:`no-store`,headers:e})).json()}catch(e){return{state:`offline`,url:t,message:e instanceof Error?e.message:String(e)}}if(n.name!==`planche`||typeof n.version!=`string`||!/^[\w.+-]{1,32}$/.test(n.version))return{state:`offline`,url:t,message:e.t(`services.agent.notPlanche`)};let r=n.install===`standalone`?`standalone`:`npx`;return n.protocolVersion===2?n.authorized===!1||i.token===null&&n.authorized===void 0?{state:`unauthorized`,url:t,version:n.version,install:r}:{state:`online`,url:t,version:n.version,activeConnections:n.activeConnections??0,install:r,...n.gateway?{gateway:n.gateway}:{}}:{state:`outdated`,url:t,version:n.version,protocolVersion:n.protocolVersion??0,install:r}}async function m(){let t=await fetch(`${d()}/profiles`,{cache:`no-store`,headers:M()}),n=await t.json().catch(()=>null);if(!t.ok||!n||n.success!==!0)throw new N(n?.message??e.t(`services.agent.httpError`,{status:t.status,statusText:t.statusText}),t.status);return n}async function h(){return E(`/ai/config`,{method:`GET`})}async function g(e){return E(`/ai/config`,{method:`PUT`,body:JSON.stringify(e)})}async function _(){return E(`/ai/config`,{method:`DELETE`})}async function v(){try{return(await(await fetch(`${d()}/health`,{cache:`no-store`,headers:M()})).json()).ai?.tools===!0}catch{return!1}}async function y(e){await E(`/bridge/tools`,{method:`POST`,body:JSON.stringify({tools:e})})}async function b(e,t,n){await E(`/bridge/result`,{method:`POST`,body:JSON.stringify({id:e,content:t,isError:n})})}async function x(t,n){let r=new AbortController,i=await fetch(`${d()}/bridge/events`,{headers:M(),signal:r.signal,cache:`no-store`});if(!i.ok||!i.body)throw new N(e.t(`services.agent.httpError`,{status:i.status,statusText:i.statusText}),i.status);return(async()=>{let e=i.body.getReader(),r=new TextDecoder,a=``;try{for(;;){let{done:n,value:i}=await e.read();if(n)break;a+=r.decode(i,{stream:!0});let o=a.indexOf(`
2
2
 
3
3
  `);for(;o!==-1;){let e=a.slice(0,o);a=a.slice(o+2);for(let n of e.split(`
4
4
  `))n.startsWith(`data: `)&&t(n.slice(6));o=a.indexOf(`
package/app/index.html CHANGED
@@ -50,32 +50,32 @@
50
50
  "offers": { "@type": "Offer", "price": "0", "priceCurrency": "USD" }
51
51
  }
52
52
  </script>
53
- <script type="module" crossorigin src="/assets/CExE8dKz.js"></script>
53
+ <script type="module" crossorigin src="/assets/D4DxtYTA.js"></script>
54
54
  <link rel="modulepreload" crossorigin href="/assets/hePW80VL.js">
55
- <link rel="modulepreload" crossorigin href="/assets/CYz610vE.js">
56
- <link rel="modulepreload" crossorigin href="/assets/Cu_sGzNJ.js">
57
- <link rel="modulepreload" crossorigin href="/assets/CiL8zoYm.js">
58
- <link rel="modulepreload" crossorigin href="/assets/BDtsGuIR.js">
59
- <link rel="modulepreload" crossorigin href="/assets/DzRyVlxz.js">
60
- <link rel="modulepreload" crossorigin href="/assets/BGuDcBB_.js">
61
- <link rel="modulepreload" crossorigin href="/assets/D8dVzi6I.js">
55
+ <link rel="modulepreload" crossorigin href="/assets/CyX8oVsa.js">
56
+ <link rel="modulepreload" crossorigin href="/assets/C76CctEl.js">
57
+ <link rel="modulepreload" crossorigin href="/assets/Dya0zxo6.js">
58
+ <link rel="modulepreload" crossorigin href="/assets/Cme0nCT7.js">
59
+ <link rel="modulepreload" crossorigin href="/assets/kTwcxyaO.js">
60
+ <link rel="modulepreload" crossorigin href="/assets/UJzcIbfW.js">
61
+ <link rel="modulepreload" crossorigin href="/assets/Ngd1VEiY.js">
62
62
  <link rel="modulepreload" crossorigin href="/assets/eFSiW0Lh.js">
63
63
  <link rel="modulepreload" crossorigin href="/assets/Nro86Y63.js">
64
- <link rel="modulepreload" crossorigin href="/assets/DU-Eln5x.js">
65
- <link rel="modulepreload" crossorigin href="/assets/S7HbowYz.js">
64
+ <link rel="modulepreload" crossorigin href="/assets/DOy06rIE.js">
65
+ <link rel="modulepreload" crossorigin href="/assets/iz6RnRcO.js">
66
66
  <link rel="modulepreload" crossorigin href="/assets/Bit0Kfog.js">
67
- <link rel="modulepreload" crossorigin href="/assets/BjwrN_ch.js">
68
- <link rel="modulepreload" crossorigin href="/assets/D8_hwGjG.js">
69
- <link rel="modulepreload" crossorigin href="/assets/C1gqjEN3.js">
70
- <link rel="modulepreload" crossorigin href="/assets/BkXrfAoR.js">
71
- <link rel="modulepreload" crossorigin href="/assets/BRZhVXRC.js">
67
+ <link rel="modulepreload" crossorigin href="/assets/zdvaVsTo.js">
68
+ <link rel="modulepreload" crossorigin href="/assets/BihjBM79.js">
69
+ <link rel="modulepreload" crossorigin href="/assets/C_qmv4pB.js">
70
+ <link rel="modulepreload" crossorigin href="/assets/BVZGLNq_.js">
71
+ <link rel="modulepreload" crossorigin href="/assets/CH4cEkW4.js">
72
72
  <link rel="modulepreload" crossorigin href="/assets/DAFA-E1-.js">
73
- <link rel="modulepreload" crossorigin href="/assets/B9dhM8vw.js">
74
- <link rel="modulepreload" crossorigin href="/assets/DPyLA6Dl.js">
75
- <link rel="modulepreload" crossorigin href="/assets/BnJGrP6V.js">
76
- <link rel="modulepreload" crossorigin href="/assets/9gOj-Ty3.js">
73
+ <link rel="modulepreload" crossorigin href="/assets/Buf-_p3w.js">
74
+ <link rel="modulepreload" crossorigin href="/assets/C3AWL5gC.js">
75
+ <link rel="modulepreload" crossorigin href="/assets/CZRhmV_L.js">
76
+ <link rel="modulepreload" crossorigin href="/assets/UEkRIZwQ.js">
77
77
  <link rel="modulepreload" crossorigin href="/assets/Bs5VSn0X.js">
78
- <link rel="stylesheet" crossorigin href="/assets/w46wk7KI.css">
78
+ <link rel="stylesheet" crossorigin href="/assets/92hmrkfN.css">
79
79
  </head>
80
80
  <body>
81
81
  <div id="boot">Loading…</div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "planche",
3
- "version": "0.9.2",
3
+ "version": "0.9.4",
4
4
  "description": "Local agent for Planche — lets the browser-based Planche database client reach MySQL/MariaDB/PostgreSQL/SQLite/SQL Server/Oracle/Neon/Supabase/Cloudflare D1 databases, Redis, Elasticsearch/OpenSearch and local Durable Object storage from your machine.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "homepage": "https://planche.dev",
@@ -1 +0,0 @@
1
- import{c as e}from"./S7HbowYz.js";import{S as t}from"./BjwrN_ch.js";function n(n){t(n),e(n)}export{n as t};
@@ -1 +0,0 @@
1
- import{n as e}from"./Cu_sGzNJ.js";var t=e(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]);export{t};