react-zeugma 5.7.0 → 5.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
'use strict';var Yt=require('react'),core=require('@dnd-kit/core'),jsxRuntime=require('react/jsx-runtime'),reactDom=require('react-dom');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var Yt__default=/*#__PURE__*/_interopDefault(Yt);function je(e){let t=Yt.useRef(null);return Yt.useEffect(()=>{if(!e){t.current=null;return}let n=r=>{t.current={x:r.clientX,y:r.clientY};},s=r=>{let o=r.touches[0]||r.changedTouches[0];o&&(t.current={x:o.clientX,y:o.clientY});};return window.addEventListener("pointermove",n,{passive:true}),window.addEventListener("touchmove",s,{passive:true}),()=>{window.removeEventListener("pointermove",n),window.removeEventListener("touchmove",s);}},[e]),t}function et(e){Yt.useEffect(()=>(e?document.body.style.setProperty("cursor","not-allowed","important"):document.body.style.removeProperty("cursor"),()=>{document.body.style.removeProperty("cursor");}),[e]);}function tt(){let[e,t]=Yt.useState({}),n=Yt.useRef(true);Yt.useEffect(()=>(n.current=true,()=>{n.current=false;}),[]);let s=Yt.useCallback((r,o)=>{n.current&&t(a=>a[r]===o?a:{...a,[r]:o});},[]);return {portalTargets:e,registerPortalTarget:s}}var Mt=8,Lt=8,Vn=4;function
|
|
1
|
+
'use strict';var Yt=require('react'),core=require('@dnd-kit/core'),jsxRuntime=require('react/jsx-runtime'),reactDom=require('react-dom');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var Yt__default=/*#__PURE__*/_interopDefault(Yt);function je(e){let t=Yt.useRef(null);return Yt.useEffect(()=>{if(!e){t.current=null;return}let n=r=>{t.current={x:r.clientX,y:r.clientY};},s=r=>{let o=r.touches[0]||r.changedTouches[0];o&&(t.current={x:o.clientX,y:o.clientY});};return window.addEventListener("pointermove",n,{passive:true}),window.addEventListener("touchmove",s,{passive:true}),()=>{window.removeEventListener("pointermove",n),window.removeEventListener("touchmove",s);}},[e]),t}function et(e){Yt.useEffect(()=>(e?document.body.style.setProperty("cursor","not-allowed","important"):document.body.style.removeProperty("cursor"),()=>{document.body.style.removeProperty("cursor");}),[e]);}function tt(){let[e,t]=Yt.useState({}),n=Yt.useRef(true);Yt.useEffect(()=>(n.current=true,()=>{n.current=false;}),[]);let s=Yt.useCallback((r,o)=>{n.current&&t(a=>a[r]===o?a:{...a,[r]:o});},[]);return {portalTargets:e,registerPortalTarget:s}}var Mt=8,Lt=8,Vn=4;function de(){return "pane-"+Math.random().toString(36).substring(2,11)}function me(e,t){if(e===null)return null;if(e.type==="pane")return e.id===t?null:e;let n=me(e.first,t),s=me(e.second,t);return n===null?s:s===null?n:{...e,first:n,second:s}}function pe(e,t){if(e===null)return null;if(e.type==="pane"){if(e.tabs.includes(t)){let r=e.tabs.filter(i=>i!==t);if(r.length===0)return null;let o=e.activeTabId;e.activeTabId===t&&(o=r[0]);let a={...e.tabsMetadata};return delete a[t],{...e,tabs:r,activeTabId:o,tabsMetadata:Object.keys(a).length>0?a:void 0}}return e}let n=pe(e.first,t),s=pe(e.second,t);return n===null?s:s===null?n:{...e,first:n,second:s}}function Te(e,t,n,s,r){if(e===null)return typeof r=="string"?{type:"pane",id:de(),tabs:[r],activeTabId:r}:r;if(e.type==="pane"){if(e.id===t){let o=typeof r=="string"?{type:"pane",id:de(),tabs:[r],activeTabId:r}:r,a=s==="left"||s==="top";return {type:"split",direction:n,first:a?o:e,second:a?e:o,splitPercentage:50}}return e}return {...e,first:Te(e.first,t,n,s,r)||e.first,second:Te(e.second,t,n,s,r)||e.second}}function nt(e,t,n){if(e===null)return {type:"pane",id:de(),tabs:[t],activeTabId:t,tabsMetadata:n?{[t]:n}:void 0};function s(r,o){return r.type==="pane"?{type:"split",direction:o==="row"?"column":"row",splitPercentage:50,first:r,second:{type:"pane",id:de(),tabs:[t],activeTabId:t,tabsMetadata:n?{[t]:n}:void 0}}:{...r,second:s(r.second,r.direction)}}return s(e,null)}function ge(e,t,n){return e===null?null:e===t?{...e,splitPercentage:n}:e.type==="split"?{...e,first:ge(e.first,t,n)||e.first,second:ge(e.second,t,n)||e.second}:e}function ne(e,t){return e===null?null:e.type==="pane"?e.id===t?e:null:ne(e.first,t)??ne(e.second,t)}function X(e,t){return e===null?null:e.type==="pane"?e.tabs.includes(t)?e:null:X(e.first,t)??X(e.second,t)}function rt(e,t){let n=X(e,t);if(!n)return null;let s=n.tabs.indexOf(t);return {id:t,paneId:n.id,isActive:n.activeTabId===t,index:s,metadata:n.tabsMetadata?.[t]}}function Re(e,t,n){if(e===null)return null;if(e.type==="pane"){if(e.tabs.includes(t)){let s=e.tabsMetadata||{},r=s[t],o=n(r),a={...s};return o===void 0?delete a[t]:a[t]=o,{...e,tabsMetadata:Object.keys(a).length>0?a:void 0}}return e}return {...e,first:Re(e.first,t,n)??e.first,second:Re(e.second,t,n)??e.second}}function Ce(e,t,n,s){if(e===null)return null;if(e.type==="pane"){if(e.id===t){let r=[...e.tabs];r.includes(n)||r.push(n);let o=e.tabsMetadata;return s&&(o={...e.tabsMetadata,[n]:s}),{...e,tabs:r,activeTabId:n,tabsMetadata:o}}return e}return {...e,first:Ce(e.first,t,n,s)||e.first,second:Ce(e.second,t,n,s)||e.second}}function De(e,t,n){if(e===null)return null;if(e.type==="pane"){if(e.id===t){if(n===false){let{locked:s,...r}=e;return r}return {...e,locked:n}}return e}return {...e,first:De(e.first,t,n)??e.first,second:De(e.second,t,n)??e.second}}function we(e,t,n){return e===null?null:e.type==="pane"?e.id===t?{...e,activeTabId:n}:e:{...e,first:we(e.first,t,n)??e.first,second:we(e.second,t,n)??e.second}}function ot(e,t,n){if(e===null)return null;let r=X(e,t)?.tabsMetadata?.[t],o=pe(e,t);if(o===null)return {type:"pane",id:de(),tabs:[t],activeTabId:t,tabsMetadata:r?{[t]:r}:void 0};function a(i){if(i.type==="pane"){if(i.id===n){let u=[...i.tabs];u.includes(t)||u.push(t);let g={...i.tabsMetadata};return r&&(g[t]=r),{...i,tabs:u,activeTabId:t,tabsMetadata:Object.keys(g).length>0?g:void 0}}return i}return {...i,first:a(i.first),second:a(i.second)}}return a(o)}function st(e,t,n,s="before"){if(e===null)return null;let o=X(e,t)?.tabsMetadata?.[t],a=pe(e,t);if(a===null)return {type:"pane",id:de(),tabs:[t],activeTabId:t,tabsMetadata:o?{[t]:o}:void 0};function i(u){if(u.type==="pane"){if(u.tabs.includes(n)){let p=[...u.tabs].filter(C=>C!==t),f=p.indexOf(n);f<0&&(f=0),s==="after"&&(f+=1),p.splice(f,0,t);let h={...u.tabsMetadata};return o&&(h[t]=o),{...u,tabs:p,activeTabId:t,tabsMetadata:Object.keys(h).length>0?h:void 0}}return u}return {...u,first:i(u.first),second:i(u.second)}}return i(a)}function ue(e,t=0,n=0,s=100,r=100,o="root"){if(e===null)return {panes:[],splitters:[]};if(e.type==="pane")return {panes:[{paneId:e.id,left:t,top:n,width:s,height:r,node:e}],splitters:[]};let{direction:a,splitPercentage:i,first:u,second:g}=e,f={id:`splitter-${o}-${a}`,currentNode:e,direction:a,left:a==="row"?t+s*(i/100):t,top:a==="column"?n+r*(i/100):n,width:a==="row"?0:s,height:a==="column"?0:r,parentLeft:t,parentTop:n,parentWidth:s,parentHeight:r},h={panes:[],splitters:[]},C={panes:[],splitters:[]};if(a==="row"){let D=s*(i/100);h=ue(u,t,n,D,r,`${o}-L`),C=ue(g,t+D,n,s-D,r,`${o}-R`);}else {let D=r*(i/100);h=ue(u,t,n,s,D,`${o}-T`),C=ue(g,t,n+D,s,r-D,`${o}-B`);}return {panes:[...h.panes,...C.panes],splitters:[f,...h.splitters,...C.splitters]}}function Se(e){try{return JSON.stringify(e)}catch{return ""}}function Zt(e){let{initialLayout:t,layout:n,onChange:s,fullscreenPaneId:r,onFullscreenChange:o,locked:a=false,dragActivationDistance:i=8,snapThreshold:u=8,minSplitPercentage:g=5,maxSplitPercentage:p=95,enableDragToDismiss:f=false,dismissThreshold:h=60,onRemove:C,onDragStart:D,onDragEnd:M,onResizeStart:m,onResize:N,onResizeEnd:v,onDismissIntentChange:y}=e,[P,Z]=Yt.useState(()=>n!==void 0?n:t??null),[z,F]=Yt.useState(()=>Se(n!==void 0?n:null)),[B,A]=Yt.useState(r||null),[J,V]=Yt.useState(a),[W,G]=Yt.useState(null),[K,d]=Yt.useState(null),[w,$]=Yt.useState(null),I=Yt.useRef(null),x=Yt.useCallback(c=>{I.current=c;},[]),l=Yt.useRef(P);l.current=P;let S=Yt.useRef(s);S.current=s;let Q=Yt.useRef(o);Q.current=o;let R=Yt.useCallback(c=>{A(c),Q.current?.(c);},[]);if(Yt.useEffect(()=>{V(a);},[a]),Yt.useEffect(()=>{r!==void 0&&A(r);},[r]),n!==void 0){let c=Se(n);c!==z&&(F(c),Z(n));}let T=Yt.useCallback(c=>(...L)=>{let H=l.current,_=c(H,...L);Se(H)!==Se(_)&&(l.current=_,Z(_),S.current?.(_));},[]),O=Yt.useCallback(T((c,L)=>typeof L=="function"?L(c):L),[T]),ee=Yt.useCallback(T((c,L)=>me(c,L)),[T]),ae=Yt.useCallback(T((c,L,H)=>nt(c,L,H)),[T]),b=Yt.useCallback(T((c,L,H,_)=>{let le=ne(c,L)??X(c,L);if(!le)return c;let ye=X(c,H),Ve=ye&&ye.id===le.id?c:pe(c,H)??c;return Ce(Ve,le.id,H,_)}),[T]),E=Yt.useCallback(T((c,L,H,_,le)=>{let ye=ne(c,L)??X(c,L);if(!ye)return c;let Ke=ne(c,le)??X(c,le)??{type:"pane",id:le,tabs:[le],activeTabId:le},Ve=me(c,le);return Te(Ve,ye.id,H,_,Ke)}),[T]),k=Yt.useCallback(T((c,L,H)=>ge(c,L,H)),[T]),re=Yt.useCallback(T((c,L,H)=>Re(c,L,H)),[T]),te=Yt.useCallback(T((c,L,H)=>{let _=ne(c,L)??X(c,L);return _?De(c,_.id,H):c}),[T]),U=Yt.useCallback(T((c,L,H)=>{let _=ne(c,L)??X(c,L);return _?we(c,_.id,H):c}),[T]),ce=Yt.useCallback(T((c,L,H)=>{let _=ne(c,H)??X(c,H);return _?ot(c,L,_.id):c}),[T]),Pe=Yt.useCallback(T((c,L,H,_)=>st(c,L,H,_)),[T]),j=Yt.useCallback(T((c,L)=>pe(c,L)),[T]),oe=Yt.useCallback(c=>ne(l.current,c),[]),se=Yt.useCallback(c=>X(l.current,c),[]),Et=Yt.useCallback(c=>rt(l.current,c),[]);return {layout:P,setLayout:O,fullscreenPaneId:B,setFullscreenPaneId:R,locked:J,setLocked:V,activeId:W,setActiveId:G,activeType:K,setActiveType:d,dismissIntentId:w,setDismissIntentId:$,containerRef:I,setContainerRef:x,dragActivationDistance:i,snapThreshold:u,minSplitPercentage:g,maxSplitPercentage:p,enableDragToDismiss:f,dismissThreshold:h,onRemove:C,onDragStart:D,onDragEnd:M,onResizeStart:m,onResize:N,onResizeEnd:v,onDismissIntentChange:y,removePane:ee,addPane:ae,addTab:b,splitPane:E,updateSplitPercentage:k,updateTabMetadata:re,updatePaneLock:te,selectTab:U,mergeTab:ce,moveTab:Pe,removeTab:j,findPaneById:oe,findPaneContainingTab:se,findTabById:Et}}function Ne({cursor:e,resizerEl:t,onMove:n,onEnd:s}){document.body.classList.add("zeugma-resizing");let r=document.createElement("style");r.id="zeugma-global-cursor-style",r.textContent=`
|
|
2
2
|
* {
|
|
3
3
|
cursor: ${e} !important;
|
|
4
4
|
user-select: none !important;
|
|
5
5
|
}
|
|
6
|
-
`,document.head.appendChild(r),t.setAttribute("data-resizing","true");let o=i=>{n(i);},a=()=>{document.body.classList.remove("zeugma-resizing"),t.removeAttribute("data-resizing");let i=document.getElementById("zeugma-global-cursor-style");i&&i.remove(),document.removeEventListener("pointermove",o),document.removeEventListener("pointerup",a),s();};document.addEventListener("pointermove",o),document.addEventListener("pointerup",a);}var Be=Yt.createContext(void 0),We=Yt.createContext(void 0),Me=Yt.createContext(void 0),Ue=Yt.createContext(void 0),ce=()=>{let e=Yt.useContext(Be);if(!e)throw new Error("useZeugmaState must be used within a Zeugma provider");return e},Le=()=>{let e=Yt.useContext(We);if(!e)throw new Error("useZeugmaActions must be used within a Zeugma provider");return e},it=()=>{let e=Yt.useContext(Ue);if(!e)throw new Error("useZeugmaDrag must be used within a Zeugma provider");return e};var kt=()=>{let e=ce(),t=Le();return {...e,...t}};var Ze=class extends core.PointerSensor{static activators=[{eventName:"onPointerDown",handler:({nativeEvent:t})=>!t.target?.closest(".drag-cancel")}]},ke=class extends core.TouchSensor{static activators=[{eventName:"onTouchStart",handler:({nativeEvent:t})=>!t.target?.closest(".drag-cancel")}]};function $e(e){if(e instanceof MouseEvent||e instanceof PointerEvent)return {x:e.clientX,y:e.clientY};if(typeof TouchEvent<"u"&&e instanceof TouchEvent){let t=e.touches[0]||e.changedTouches[0];if(t)return {x:t.clientX,y:t.clientY}}return null}function ct(e){let{layout:t,setLayout:n,activeId:s,setActiveId:r,setActiveType:o,dismissIntentId:a,setDismissIntentId:i,setOverTabId:u,setOverTabPosition:p,containerRef:f,dragActivationDistance:b,enableDragToDismiss:h,dismissThreshold:S,onRemove:T,onDragStart:M,onDragEnd:m,onDismissIntentChange:w,removeTab:g,moveTab:R,selectTab:x}=e,E=Yt.useRef(null),z=je(s),[O,K]=Yt.useState(false);et(O);let Z=core.useSensors(core.useSensor(Ze,{activationConstraint:{distance:b}}),core.useSensor(ke,{activationConstraint:{delay:250,tolerance:5}})),Y=Yt.useCallback(d=>{let C=core.pointerWithin(d);if(C.length>0)return C;if(d.active.id.toString().startsWith("tab-header-")){let N=d.droppableContainers.filter(D=>D.id.toString().startsWith("tab-drop-"));return core.closestCenter({...d,droppableContainers:N})}return []},[]);return {sensors:Z,collisionDetection:Y,onDragStart:d=>{let C=d.active.id.toString(),H=C.startsWith("tab-header-"),N=H?C.substring(11):C;r(N),o(H?"tab":"pane"),u(null),p(null);let D=d.activatorEvent;if(z.current=$e(D),h&&f.current?E.current=f.current.getBoundingClientRect():E.current=null,H){let l=J(t,N);l&&x(l.id,N);}M&&M(N);},onDragMove:d=>{let{over:C}=d,H=C?.id.toString()||"",N=H.startsWith("drop-locked-");K(v=>v===N?v:N);let D=H.match(/^tab-drop-(.+)$/);if(D&&C){let[,v]=D,k=d.active.id.toString();if((k.startsWith("tab-header-")?k.substring(11):k)!==v){let W="before",ae=C.rect,ie=d.activatorEvent,le=null;if(z.current)le=z.current.x;else {let A=$e(ie);A&&(le=A.x+d.delta.x);}if(le!==null){let A=ae.left+ae.width/2;le>A&&(W="after");}u(A=>A===v?A:v),p(A=>A===W?A:W);}else u(W=>W===null?W:null),p(W=>W===null?W:null);}else u(v=>v===null?v:null),p(v=>v===null?v:null);if(!h)return;let l=d.active.id.toString(),X=l.startsWith("tab-header-")?l.substring(11):l,y=E.current;if(!y){a!==null&&(i(null),w?.(null));return}let P=d.activatorEvent,q=null,B=null;if(z.current)q=z.current.x,B=z.current.y;else {let v=$e(P);v&&(q=v.x+d.delta.x,B=v.y+d.delta.y);}let ee=0;if(q!==null&&B!==null){let v=0,k=0;q<y.left?v=y.left-q:q>y.right&&(v=q-y.right),B<y.top?k=y.top-B:B>y.bottom&&(k=B-y.bottom),ee=Math.sqrt(v*v+k*k);}else {let v=d.active.rect.current.translated;if(v){let k=v.left+v.width/2,$=v.top+v.height/2,se=0,W=0;k<y.left?se=y.left-k:k>y.right&&(se=k-y.right),$<y.top?W=y.top-$:$>y.bottom&&(W=$-y.bottom),ee=Math.sqrt(se*se+W*W);}}ee>S?a!==X&&(i(X),w?.(X)):a!==null&&(i(null),w?.(null));},onDragEnd:d=>{r(null),o(null),K(false),u(null),p(null);let{active:C,over:H}=d,N=C.id.toString(),D=N.startsWith("tab-header-"),l=D?N.substring(11):N,L=h&&a===l;if(i(null),w?.(null),E.current=null,L){T?T(l):g(l),m&&m(l,null,null);return}if(!H){m&&m(l,null,null);return}let X=H.id.toString();if(X.startsWith("drop-locked-")){m&&m(l,null,null);return}let y=X.match(/^tab-drop-(.+)$/);if(y){let[,ae]=y;if(l!==ae){let ie="before",le=H.rect,A=d.activatorEvent,ne=null;if(z.current)ne=z.current.x;else {let re=$e(A);re&&(ne=re.x+d.delta.x);}if(ne!==null){let re=le.left+le.width/2;ne>re&&(ie="after");}R(l,ae,ie),m&&m(l,ae,{type:"move",position:"center"});}else m&&m(l,null,null);return}let P=X.match(/^drop-(left|right|top|bottom)-(.+)$/);if(!P){m&&m(l,null,null);return}let[,q,B]=P,ee=D?J(t,l):te(t,l),oe=ee&&ee.id===B,v=ee&&ee.tabs.length===1;if(l===B||oe&&v){m&&m(l,null,null);return}let k=q==="left"||q==="right"?"row":"column",$;if(D){let ie=J(t,l)?.tabsMetadata?.[l];$={type:"pane",id:pe(),tabs:[l],activeTabId:l,tabsMetadata:ie?{[l]:ie}:void 0};}else $=te(t,l)??{type:"pane",id:pe(),tabs:[l],activeTabId:l};let se=D?fe(t,l):ge(t,l),W=Te(se,B,k,q,$);n(W),m&&m(l,B,{type:"split",direction:k,position:q});},onDragCancel:()=>{r(null),o(null),K(false),u(null),p(null),i(null),w?.(null),E.current=null;}}}var ut=({activeId:e,render:t,className:n})=>{let s=Yt.useRef(null);return Yt.useEffect(()=>{let r=o=>{s.current&&(s.current.style.transform=`translate(${o.clientX+12}px, ${o.clientY+12}px)`);};return document.addEventListener("pointermove",r),()=>document.removeEventListener("pointermove",r)},[]),jsxRuntime.jsx("div",{ref:s,className:n,style:{position:"fixed",top:0,left:0,zIndex:9999,pointerEvents:"none"},children:t(e)})};var dt=Yt__default.default.memo(({tabId:e,target:t,renderWidget:n})=>{let[s,r]=Yt.useState(false),o=Yt.useRef(null);if(Yt.useEffect(()=>{r(true);},[]),Yt.useEffect(()=>{if(!s||!o.current)return;let i=o.current;if(t)t.appendChild(i);else {let u=document.getElementById("zeugma-hidden-portal-container");u||(u=document.createElement("div"),u.id="zeugma-hidden-portal-container",u.style.display="none",document.body.appendChild(u)),u.appendChild(i);}},[t,s]),Yt.useEffect(()=>()=>{o.current&&o.current.remove();},[]),!s)return null;o.current||(o.current=document.createElement("div"),o.current.className=`zeugma-portal-wrapper-${e}`,o.current.style.width="100%",o.current.style.height="100%");let a=o.current;return !a||!n?null:reactDom.createPortal(n(e),a)});var Kt=e=>{let t=e,{renderPane:n,renderWidget:s,renderDragOverlay:r,classNames:o={},children:a,layout:i,setLayout:u,fullscreenPaneId:p,setFullscreenPaneId:f,locked:b,setLocked:h,findPaneById:S,findPaneContainingTab:T,findTabById:M,activeId:m,activeType:w,dismissIntentId:g,setContainerRef:R,snapThreshold:x,minSplitPercentage:E,maxSplitPercentage:z,onRemove:O,onResizeStart:K,onResize:Z,onResizeEnd:Y,removePane:F,addPane:U,addTab:Q,updateTabMetadata:j,updatePaneLock:d,selectTab:C,mergeTab:H,removeTab:N,splitPane:D,updateSplitPercentage:l,moveTab:L}=t,{portalTargets:X,registerPortalTarget:y}=tt(),[P,q]=Yt.useState(null),[B,ee]=Yt.useState(null),oe=ct({...t,setOverTabId:q,setOverTabPosition:ee}),v=Yt.useCallback(A=>n(A),[n]),k=Yt.useMemo(()=>o,[o.dashboard,o.dashboardDismissActive,o.pane,o.paneLocked,o.dropPreview,o.dragOverlay,o.resizer,o.dismissPreview,o.dashboardLocked,o.lockedPreview,o.tabDropPreview,o.tabSeparator]),$=Yt.useCallback((A,ne)=>{Y&&Y(A,ne);},[Y]),se=Yt.useMemo(()=>({layout:i,setLayout:u,renderPane:v,activeId:m,activeType:w,dismissIntentId:g,setContainerRef:R,fullscreenPaneId:p,classNames:k,onRemove:O,onFullscreenChange:f,snapThreshold:x,onResizeStart:K,onResize:Z,onResizeEnd:$,minSplitPercentage:E,maxSplitPercentage:z,locked:b,setLocked:h,findPaneById:S,findPaneContainingTab:T,findTabById:M}),[i,m,w,g,R,p,k,O,f,x,K,Z,E,z,u,v,$,b,h,S,T,M]),W=Yt.useMemo(()=>({overTabId:P,overTabPosition:B}),[P,B]),ae=Yt.useMemo(()=>({removePane:F,addPane:U,addTab:Q,updateTabMetadata:j,updatePaneLock:d,selectTab:C,mergeTab:H,removeTab:N,setFullscreenPaneId:f,setLocked:h,splitPane:D,updateSplitPercentage:l,moveTab:L}),[F,U,Q,j,d,C,H,N,f,h,D,l,L]),ie=Yt.useMemo(()=>{let A=[];function ne(re){re&&(re.type==="pane"?A.push(...re.tabs):(ne(re.first),ne(re.second)));}return ne(i),A},[i]),le=Yt.useMemo(()=>({registerPortalTarget:y}),[y]);return jsxRuntime.jsx(We.Provider,{value:ae,children:jsxRuntime.jsx(Be.Provider,{value:se,children:jsxRuntime.jsx(Ue.Provider,{value:W,children:jsxRuntime.jsxs(Me.Provider,{value:le,children:[jsxRuntime.jsx(core.DndContext,{id:"zeugma-dnd-context",...oe,children:a}),m&&w&&r&&jsxRuntime.jsx(ut,{activeId:m,render:A=>r(A,w),className:`${o.dragOverlay||""} ${m===g&&o.dismissPreview||""}`.trim()}),jsxRuntime.jsx("div",{id:"zeugma-portal-host",style:{display:"none"},children:ie.map(A=>jsxRuntime.jsx(dt,{tabId:A,target:X[A]||null,renderWidget:s},A))})]})})})})};function Ye({containerRef:e,isRow:t,direction:n,splitPercentage:s,resizerSize:r,snapThreshold:o,layout:a,currentNode:i,onLayoutChange:u,onResizeStart:p,onResizeEnd:f,parentLeft:b,parentTop:h,parentWidth:S,parentHeight:T}){let{onResizeStart:M,onResize:m,onResizeEnd:w,minSplitPercentage:g=5,maxSplitPercentage:R=95,locked:x=false}=ce();return Yt.useCallback(E=>{if(x)return;E.preventDefault();let z=e.current;if(!z)return;p&&p(),M&&M(i);let O=z.getBoundingClientRect(),K=E.clientX,Z=E.clientY,Y=s,F=E.currentTarget,U=O.left+O.width*(b/100),Q=O.top+O.height*(h/100),j=O.width*(S/100),d=O.height*(T/100),H=Array.from(document.querySelectorAll('div[role="separator"][data-direction]')).filter(D=>D!==F&&D.getAttribute("data-direction")===n).map(D=>{let l=D.getBoundingClientRect();return t?l.left+l.width/2:l.top+l.height/2}),N=Y;Ne({cursor:t?"col-resize":"row-resize",resizerEl:F,onMove:D=>{let l=t?(D.clientX-K)/j*100:(D.clientY-Z)/d*100,L=Y+l,X=t?U+(j-r)*(L/100)+r/2:Q+(d-r)*(L/100)+r/2,y=1/0,P=null;for(let oe of H){let v=Math.abs(X-oe);v<o&&v<y&&(y=v,P=oe);}let q=L;P!==null&&(q=t?(P-r/2-U)/(j-r)*100:(P-r/2-Q)/(d-r)*100);let B=Math.max(g,Math.min(R,q));N=B;let ee=be(a,i,B);if(ee){let{panes:oe,splitters:v}=de(ee),k=e.current;if(k){for(let $ of oe)k.style.setProperty(`--pane-left-${$.paneId}`,`${$.left}%`),k.style.setProperty(`--pane-top-${$.paneId}`,`${$.top}%`),k.style.setProperty(`--pane-width-${$.paneId}`,`${$.width}%`),k.style.setProperty(`--pane-height-${$.paneId}`,`${$.height}%`);for(let $ of v)k.style.setProperty(`--splitter-pos-${$.id}`,`${$.direction==="row"?$.left:$.top}%`);}}m&&m(i,B);},onEnd:()=>{let D=be(a,i,N),l=e.current;if(l){let{panes:L,splitters:X}=de(D);for(let y of L)l.style.removeProperty(`--pane-left-${y.paneId}`),l.style.removeProperty(`--pane-top-${y.paneId}`),l.style.removeProperty(`--pane-width-${y.paneId}`),l.style.removeProperty(`--pane-height-${y.paneId}`);for(let y of X)l.style.removeProperty(`--splitter-pos-${y.id}`);}u(D),f&&f(),w&&w(i,N);}});},[e,t,n,s,r,o,a,i,u,p,f,M,m,w,g,R,b,h,S,T])}var on=({splitter:e,resizerSize:t,snapThreshold:n,containerRef:s})=>{let{layout:r,setLayout:o,classNames:a,locked:i}=ce(),[u,p]=Yt.useState(false),{currentNode:f,direction:b,left:h,top:S,width:T,height:M,parentLeft:m,parentTop:w,parentWidth:g,parentHeight:R}=e,x=b==="row",E=Ye({containerRef:s,isRow:x,direction:b,splitPercentage:f.splitPercentage,resizerSize:t,snapThreshold:n,layout:r,currentNode:f,onLayoutChange:o,onResizeStart:()=>p(true),onResizeEnd:()=>p(false),parentLeft:m,parentTop:w,parentWidth:g,parentHeight:R}),z=x?{position:"absolute",left:`calc(var(--splitter-pos-${e.id}, ${h}%) - ${t/2}px)`,top:`calc(${S}% + ${t/2}px)`,width:`${t}px`,height:`calc(${M}% - ${t}px)`,cursor:i?"default":"col-resize",pointerEvents:i?"none":"auto",zIndex:10,userSelect:"none",touchAction:"none",boxSizing:"border-box"}:{position:"absolute",left:`calc(${h}% + ${t/2}px)`,top:`calc(var(--splitter-pos-${e.id}, ${S}%) - ${t/2}px)`,width:`calc(${T}% - ${t}px)`,height:`${t}px`,cursor:i?"default":"row-resize",pointerEvents:i?"none":"auto",zIndex:10,userSelect:"none",touchAction:"none",boxSizing:"border-box"};return jsxRuntime.jsx("div",{className:a.resizer||"","data-direction":b,"data-resizing":u||void 0,style:z,onPointerDown:E,role:"separator","aria-valuenow":f.splitPercentage,"aria-valuemin":5,"aria-valuemax":95})},sn=Yt__default.default.memo(({paneId:e,renderPane:t})=>jsxRuntime.jsx(jsxRuntime.Fragment,{children:t(e)}),(e,t)=>e.paneId===t.paneId&&e.renderPane===t.renderPane),an=({tree:e,resizerSize:t=4,snapThreshold:n})=>{let{layout:s,renderPane:r,activeId:o,dismissIntentId:a,setContainerRef:i,fullscreenPaneId:u,snapThreshold:p,locked:f,classNames:b}=ce(),h=n!==void 0?n:p??8,S=e!==void 0?e:s,T=Yt.useRef(null),{panes:M,splitters:m}=Yt.useMemo(()=>S?de(S):{panes:[],splitters:[]},[S]);if(!S)return null;let w=()=>jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[M.map(g=>{let R=u===g.paneId;return jsxRuntime.jsx("div",{style:{position:"absolute",left:R?"0%":`var(--pane-left-${g.paneId}, ${g.left}%)`,top:R?"0%":`var(--pane-top-${g.paneId}, ${g.top}%)`,width:R?"100%":`var(--pane-width-${g.paneId}, ${g.width}%)`,height:R?"100%":`var(--pane-height-${g.paneId}, ${g.height}%)`,overflow:"hidden",zIndex:R?20:1,display:u&&!R?"none":"block",padding:R?"0px":`${t/2}px`,boxSizing:"border-box"},children:jsxRuntime.jsx(sn,{paneId:g.paneId,renderPane:r})},g.paneId)}),!u&&m.map(g=>jsxRuntime.jsx(on,{splitter:g,resizerSize:t,snapThreshold:h,containerRef:T},g.id))]});if(e===void 0){let g=o!==null&&o===a,R=E=>{i(E),T.current=E;},x=`${b.dashboard||""} ${g&&b.dashboardDismissActive||""} ${f&&b.dashboardLocked||""}`.trim();return jsxRuntime.jsx("div",{ref:R,className:x,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden"},children:w()})}return jsxRuntime.jsx("div",{ref:T,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden"},children:w()})};var ht="zeugma-height:",dn="default-pane";function pn(e){try{let t=localStorage.getItem(ht+e);if(t!==null){let n=Number(t);if(Number.isFinite(n)&&n>0)return n}}catch{}return null}function vt(e,t){try{localStorage.setItem(ht+e,String(Math.round(t)));}catch{}}var Pt=({children:e,active:t=true,height:n,onHeightChange:s,minHeight:r=100,maxHeight:o=1/0,persist:a,localStorageKey:i,resizerHeight:u=6,className:p,resizerClassName:f})=>{let b=a?i||dn:null,h=()=>{let x=(b?pn(b):null)??n??400;return ze(x,r,o)},[S,T]=Yt.useState(h),M=Yt.useRef(null),m=b?S:n??S,w=Yt.useRef(n);Yt.useEffect(()=>{if(n!==void 0&&n!==w.current){let x=ze(n,r,o);T(x),b&&vt(b,x);}w.current=n;},[n,r,o,b]);let g=Yt.useCallback(()=>o,[o]),R=Yt.useCallback(x=>{x.preventDefault();let E=x.clientY,z=m,O=g(),K=x.currentTarget,Z=Tt(M.current),Y=Z?Z.scrollTop:0,F=E,U=null,Q=(d,C)=>{let H=C-Y,D=d-E+H,l=ze(z+D,r,O);return M.current&&(M.current.style.height=`${l}px`),l},j=()=>{if(!Z)return;let d=Z===document.documentElement||Z===document.body?{top:0,bottom:window.innerHeight}:Z.getBoundingClientRect(),C=40,H=10,N=0;F>d.bottom-C?N=Math.min(1,(F-(d.bottom-C))/C)*H:F<d.top+C&&(N=-Math.min(1,(d.top+C-F)/C)*H),N!==0&&(Z.scrollTop+=N,Q(F,Z.scrollTop)),U=requestAnimationFrame(j);};U=requestAnimationFrame(j),Ne({cursor:"row-resize",resizerEl:K,onMove:d=>{F=d.clientY,Z&&Q(F,Z.scrollTop);},onEnd:()=>{U!==null&&cancelAnimationFrame(U);let d=z;M.current&&(d=M.current.getBoundingClientRect().height),d=ze(d,r,O),T(d),s&&s(d),b&&vt(b,d);}});},[m,r,g,s,b]);return t?jsxRuntime.jsxs("div",{ref:M,className:p,style:{height:`${m}px`,position:"relative",overflow:"hidden",boxSizing:"border-box"},children:[jsxRuntime.jsx("div",{style:{height:`calc(100% - ${u}px)`,overflow:"hidden"},children:e}),jsxRuntime.jsx("div",{className:f,style:{height:`${u}px`,cursor:"row-resize",position:"relative",zIndex:10,userSelect:"none",touchAction:"none",boxSizing:"border-box",flexShrink:0},onPointerDown:R,role:"separator","aria-orientation":"horizontal","aria-valuenow":Math.round(m),"aria-valuemin":r,"aria-valuemax":o===1/0?void 0:o})]}):jsxRuntime.jsx("div",{className:p,style:{height:"100%",position:"relative",overflow:"hidden",boxSizing:"border-box"},children:jsxRuntime.jsx("div",{style:{height:"100%",overflow:"hidden"},children:e})})};function ze(e,t,n){return Math.max(t,Math.min(n,e))}function Tt(e){if(typeof window>"u"||!e)return null;let t=e.parentElement;if(!t)return document.documentElement;let s=window.getComputedStyle(t).overflowY;return s==="auto"||s==="scroll"?t:Tt(t)}var He=Yt.createContext(null);var xn={top:{position:"absolute",top:0,left:"25%",width:"50%",height:"25%",zIndex:20,pointerEvents:"auto"},bottom:{position:"absolute",bottom:0,left:"25%",width:"50%",height:"25%",zIndex:20,pointerEvents:"auto"},left:{position:"absolute",top:"25%",left:0,width:"25%",height:"50%",zIndex:20,pointerEvents:"auto"},right:{position:"absolute",top:"25%",right:0,width:"25%",height:"50%",zIndex:20,pointerEvents:"auto"},full:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:20,pointerEvents:"auto",cursor:"not-allowed"}},yn={top:{position:"absolute",top:0,left:0,right:0,height:"50%",zIndex:21,pointerEvents:"none",boxSizing:"border-box"},bottom:{position:"absolute",bottom:0,left:0,right:0,height:"50%",zIndex:21,pointerEvents:"none",boxSizing:"border-box"},left:{position:"absolute",top:0,bottom:0,left:0,width:"50%",zIndex:21,pointerEvents:"none",boxSizing:"border-box"},right:{position:"absolute",top:0,bottom:0,right:0,width:"50%",zIndex:21,pointerEvents:"none",boxSizing:"border-box"},full:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:21,pointerEvents:"none",boxSizing:"border-box"}},xt=({id:e,position:t,activeClassName:n})=>{let{setNodeRef:s,isOver:r}=core.useDroppable({id:e});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("div",{ref:s,style:xn[t]}),r&&jsxRuntime.jsx("div",{className:n,style:yn[t]})]})},Sn=({id:e,children:t,style:n,locked:s=false})=>{let r=Yt.useRef(null),{layout:o,activeId:a,classNames:i,fullscreenPaneId:u,onFullscreenChange:p,locked:f}=ce(),{removePane:b,updateTabMetadata:h,selectTab:S,removeTab:T}=Le(),M=Yt.useContext(Me);if(!M)throw new Error("Pane must be used within a Zeugma provider");let{registerPortalTarget:m}=M,w=Yt.useMemo(()=>te(o,e),[o,e]),g=w?.id??e,R=w?.tabs??[e],x=w?.activeTabId??e,E=w?.tabsMetadata,z=E?.[e],O=w?.locked??false,K=s||O,Z=f||K,Y=f||K,F=a!==null&&a!==e&&(!R.includes(a)||R.length>1)&&!Y,{attributes:U,listeners:Q,setNodeRef:j}=core.useDraggable({id:e,disabled:Z}),d=a!==null&&R.includes(a),C=u===e,H=Yt.useCallback(()=>jsxRuntime.jsx("div",{ref:r,id:`zeugma-tab-target-${x}`,className:"zeugma-tab-content-wrapper",style:{height:"100%",width:"100%"}}),[x]);Yt.useEffect(()=>{let L=r.current;return m(x,L),()=>{m(x,null);}},[x,m]);let N=Yt.useMemo(()=>({isDragging:d,isFullscreen:C,toggleFullscreen:()=>p?.(C?null:e),remove:()=>{C&&p?.(null),b(g);},metadata:z,updateMetadata:L=>{h(e,L);},locked:Z,tabs:R,activeTabId:x,selectTab:L=>S(g,L),removeTab:L=>{C&&L===x&&p?.(null),T(L);},tabsMetadata:E,updateTabMetadata:(L,X)=>{h(L,X);},renderActiveTab:H}),[d,C,p,e,T,z,h,Z,R,x,S,g,E,H]),D=Yt.useMemo(()=>Z?{disabled:true}:{...Q,...U},[Q,U,Z]),l=`${i.pane||""} ${K&&i.paneLocked||""}`.trim();return jsxRuntime.jsx(He.Provider,{value:D,children:jsxRuntime.jsxs("div",{ref:j,className:l,style:{position:"relative",width:"100%",height:"100%",...n},children:[t(N),F&&jsxRuntime.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:15,pointerEvents:"none"},children:["top","bottom","left","right"].map(L=>jsxRuntime.jsx(xt,{id:`drop-${L}-${e}`,position:L,activeClassName:i.dropPreview},L))}),a!==null&&a!==e&&Y&&jsxRuntime.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:15,pointerEvents:"none"},children:jsxRuntime.jsx(xt,{id:`drop-locked-${e}`,position:"full",activeClassName:i.lockedPreview||""})})]})})};var Dn=({children:e,className:t,style:n})=>{let s=Yt.useContext(He);if(!s)throw new Error("<DragHandle> must be used inside a <Pane>");let{disabled:r,...o}=s;return jsxRuntime.jsx("div",{className:t,style:{cursor:r?"default":"grab",userSelect:r?"auto":"none",touchAction:r?"auto":"none",...n},...r?{}:o,children:e})};var Ct=Yt.createContext(void 0),Ln=()=>{let e=Yt.useContext(Ct);if(!e)throw new Error("useTabContext must be used within a Tab component");return e},Dt=({id:e,locked:t=false,children:n,className:s,style:r})=>{let{locked:o,classNames:a={}}=ce(),{overTabId:i,overTabPosition:u}=it(),p=Yt.useContext(Je),f=t||o||(p?.locked??false),{attributes:b,listeners:h,setNodeRef:S,isDragging:T}=core.useDraggable({id:`tab-header-${e}`,disabled:f}),{setNodeRef:M,isOver:m}=core.useDroppable({id:`tab-drop-${e}`,disabled:f}),w=d=>{S(d),M(d);},g=m&&i===e,R=g?u:null,x=g&&R?jsxRuntime.jsx("div",{className:a.tabDropPreview,style:{left:R==="before"?0:void 0,right:R==="after"?0:void 0}}):null,E=p?.tabs||[],z=E.indexOf(e),O=p?.activeTabId,Z=z>0&&e!==O&&E[z-1]!==O?jsxRuntime.jsx("div",{className:a.tabSeparator}):null,Y=p?p.activeTabId===e:false,F=p?.tabsMetadata?.[e],U=Yt.useCallback(()=>{p?.selectTab(e);},[p,e]),Q=Yt.useCallback(()=>{p?.removeTab(e);},[p,e]),j=Yt.useMemo(()=>({tabId:e,isActive:Y,isDragging:T,isOver:g,metadata:F,locked:f,selectTab:U,removeTab:Q}),[e,Y,T,g,F,f,U,Q]);return jsxRuntime.jsx(Ct.Provider,{value:j,children:jsxRuntime.jsxs("div",{ref:w,className:s,style:{display:"inline-flex",position:"relative",cursor:f?"default":"grab",...r},...f?{}:h,...f?{}:b,children:[Z,n({isDragging:T,isOver:g}),x]})})};var Je=Yt.createContext(void 0);var wt=(e,t)=>typeof e=="function"?e(t):e,zn=({tabs:e,activeTabId:t,locked:n=false,tabsMetadata:s,selectTab:r,removeTab:o,renderTab:a,classNames:i,styles:u})=>{let p=Yt.useMemo(()=>({tabs:e,activeTabId:t,locked:n,tabsMetadata:s,selectTab:r,removeTab:o}),[e,t,n,s,r,o]);return jsxRuntime.jsx(Je.Provider,{value:p,children:jsxRuntime.jsx("div",{className:i?.container,style:{display:"flex",alignItems:"center",height:"100%",...u?.container},children:e.map(f=>{let b=s?.[f],h=wt(i?.tab,f),S=wt(u?.tab,f);return jsxRuntime.jsx(Dt,{id:f,locked:n,className:h,style:S,children:({isDragging:T,isOver:M})=>a({tabId:f,activeTabId:t,isDragging:T,isOver:M,metadata:b,selectTab:r,removeTab:o})},f)})})})};exports.DEFAULT_DRAG_ACTIVATION_DISTANCE=Lt;exports.DEFAULT_RESIZER_SIZE=Vn;exports.DEFAULT_SNAP_THRESHOLD=Mt;exports.DragHandle=Dn;exports.Pane=Sn;exports.PaneTree=an;exports.PortalRegistryContext=Me;exports.ResizableContainer=Pt;exports.Tabs=zn;exports.Zeugma=Kt;exports.ZeugmaActionsContext=We;exports.ZeugmaDragContext=Ue;exports.ZeugmaStateContext=Be;exports.createDragSession=Ne;exports.safeJsonStringify=Se;exports.useResizer=Ye;exports.useTabContext=Ln;exports.useZeugma=Zt;exports.useZeugmaActions=Le;exports.useZeugmaContext=kt;exports.useZeugmaDrag=it;exports.useZeugmaState=ce;//# sourceMappingURL=index.cjs.map
|
|
6
|
+
`,document.head.appendChild(r),t.setAttribute("data-resizing","true");let o=i=>{n(i);},a=()=>{document.body.classList.remove("zeugma-resizing"),t.removeAttribute("data-resizing");let i=document.getElementById("zeugma-global-cursor-style");i&&i.remove(),document.removeEventListener("pointermove",o),document.removeEventListener("pointerup",a),s();};document.addEventListener("pointermove",o),document.addEventListener("pointerup",a);}var Be=Yt.createContext(void 0),We=Yt.createContext(void 0),Me=Yt.createContext(void 0),Ue=Yt.createContext(void 0),ie=()=>{let e=Yt.useContext(Be);if(!e)throw new Error("useZeugmaState must be used within a Zeugma provider");return e},Le=()=>{let e=Yt.useContext(We);if(!e)throw new Error("useZeugmaActions must be used within a Zeugma provider");return e},it=()=>{let e=Yt.useContext(Ue);if(!e)throw new Error("useZeugmaDrag must be used within a Zeugma provider");return e};var kt=()=>{let e=ie(),t=Le();return {...e,...t}};var Ze=class extends core.PointerSensor{static activators=[{eventName:"onPointerDown",handler:({nativeEvent:t})=>!t.target?.closest(".drag-cancel")}]},ke=class extends core.TouchSensor{static activators=[{eventName:"onTouchStart",handler:({nativeEvent:t})=>!t.target?.closest(".drag-cancel")}]};function $e(e){if(e instanceof MouseEvent||e instanceof PointerEvent)return {x:e.clientX,y:e.clientY};if(typeof TouchEvent<"u"&&e instanceof TouchEvent){let t=e.touches[0]||e.changedTouches[0];if(t)return {x:t.clientX,y:t.clientY}}return null}function ct(e){let{layout:t,setLayout:n,activeId:s,setActiveId:r,setActiveType:o,dismissIntentId:a,setDismissIntentId:i,setOverTabId:u,setOverTabPosition:g,containerRef:p,dragActivationDistance:f,enableDragToDismiss:h,dismissThreshold:C,onRemove:D,onDragStart:M,onDragEnd:m,onDismissIntentChange:N,removeTab:v,moveTab:y,selectTab:P}=e,Z=Yt.useRef(null),z=je(s),[F,B]=Yt.useState(false);et(F);let A=core.useSensors(core.useSensor(Ze,{activationConstraint:{distance:f}}),core.useSensor(ke,{activationConstraint:{delay:250,tolerance:5}})),J=Yt.useCallback(d=>{let $=d.active.id.toString().startsWith("tab-header-"),I=core.pointerWithin(d),x=$?I:I.filter(l=>!l.id.toString().startsWith("tab-drop-"));if(x.length>0)return x;if($){let l=d.droppableContainers.filter(S=>S.id.toString().startsWith("tab-drop-"));return core.closestCenter({...d,droppableContainers:l})}return []},[]);return {sensors:A,collisionDetection:J,onDragStart:d=>{let w=d.active.id.toString(),$=w.startsWith("tab-header-"),I=$?w.substring(11):w;r(I),o($?"tab":"pane"),u(null),g(null);let x=d.activatorEvent;if(z.current=$e(x),h&&p.current?Z.current=p.current.getBoundingClientRect():Z.current=null,$){let l=X(t,I);l&&P(l.id,I);}M&&M(I);},onDragMove:d=>{let{over:w}=d,$=w?.id.toString()||"",I=$.startsWith("drop-locked-");B(b=>b===I?b:I);let x=d.active.id.toString(),l=x.startsWith("tab-header-"),S=l?x.substring(11):x,Q=$.match(/^tab-drop-(.+)$/);if(Q&&w&&l){let[,b]=Q;if(S!==b){let E="before",k=w.rect,re=d.activatorEvent,te=null;if(z.current)te=z.current.x;else {let U=$e(re);U&&(te=U.x+d.delta.x);}if(te!==null){let U=k.left+k.width/2;te>U&&(E="after");}u(U=>U===b?U:b),g(U=>U===E?U:E);}else u(E=>E===null?E:null),g(E=>E===null?E:null);}else u(b=>b===null?b:null),g(b=>b===null?b:null);if(!h)return;let R=Z.current;if(!R){a!==null&&(i(null),N?.(null));return}let T=d.activatorEvent,Y=null,O=null;if(z.current)Y=z.current.x,O=z.current.y;else {let b=$e(T);b&&(Y=b.x+d.delta.x,O=b.y+d.delta.y);}let ee=0;if(Y!==null&&O!==null){let b=0,E=0;Y<R.left?b=R.left-Y:Y>R.right&&(b=Y-R.right),O<R.top?E=R.top-O:O>R.bottom&&(E=O-R.bottom),ee=Math.sqrt(b*b+E*E);}else {let b=d.active.rect.current.translated;if(b){let E=b.left+b.width/2,k=b.top+b.height/2,re=0,te=0;E<R.left?re=R.left-E:E>R.right&&(re=E-R.right),k<R.top?te=R.top-k:k>R.bottom&&(te=k-R.bottom),ee=Math.sqrt(re*re+te*te);}}ee>C?a!==S&&(i(S),N?.(S)):a!==null&&(i(null),N?.(null));},onDragEnd:d=>{r(null),o(null),B(false),u(null),g(null);let{active:w,over:$}=d,I=w.id.toString(),x=I.startsWith("tab-header-"),l=x?I.substring(11):I,S=h&&a===l;if(i(null),N?.(null),Z.current=null,S){D?D(l):v(l),m&&m(l,null,null);return}if(!$){m&&m(l,null,null);return}let Q=$.id.toString();if(Q.startsWith("drop-locked-")){m&&m(l,null,null);return}let R=Q.match(/^tab-drop-(.+)$/);if(R){if(!x){m&&m(l,null,null);return}let[,U]=R;if(l!==U){let ce="before",Pe=$.rect,j=d.activatorEvent,oe=null;if(z.current)oe=z.current.x;else {let se=$e(j);se&&(oe=se.x+d.delta.x);}if(oe!==null){let se=Pe.left+Pe.width/2;oe>se&&(ce="after");}y(l,U,ce),m&&m(l,U,{type:"move",position:"center"});}else m&&m(l,null,null);return}let T=Q.match(/^drop-(left|right|top|bottom)-(.+)$/);if(!T){m&&m(l,null,null);return}let[,Y,O]=T,ee=x?X(t,l):ne(t,l),ae=ee&&ee.id===O,b=ee&&ee.tabs.length===1;if(l===O||ae&&b){m&&m(l,null,null);return}let E=Y==="left"||Y==="right"?"row":"column",k;if(x){let ce=X(t,l)?.tabsMetadata?.[l];k={type:"pane",id:de(),tabs:[l],activeTabId:l,tabsMetadata:ce?{[l]:ce}:void 0};}else k=ne(t,l)??{type:"pane",id:de(),tabs:[l],activeTabId:l};let re=x?pe(t,l):me(t,l),te=Te(re,O,E,Y,k);n(te),m&&m(l,O,{type:"split",direction:E,position:Y});},onDragCancel:()=>{r(null),o(null),B(false),u(null),g(null),i(null),N?.(null),Z.current=null;}}}var ut=({activeId:e,render:t,className:n})=>{let s=Yt.useRef(null);return Yt.useEffect(()=>{let r=o=>{s.current&&(s.current.style.transform=`translate(${o.clientX+12}px, ${o.clientY+12}px)`);};return document.addEventListener("pointermove",r),()=>document.removeEventListener("pointermove",r)},[]),jsxRuntime.jsx("div",{ref:s,className:n,style:{position:"fixed",top:0,left:0,zIndex:9999,pointerEvents:"none"},children:t(e)})};var dt=Yt__default.default.memo(({tabId:e,target:t,renderWidget:n})=>{let[s,r]=Yt.useState(false),o=Yt.useRef(null);if(Yt.useEffect(()=>{r(true);},[]),Yt.useEffect(()=>{if(!s||!o.current)return;let i=o.current;if(t)t.appendChild(i);else {let u=document.getElementById("zeugma-hidden-portal-container");u||(u=document.createElement("div"),u.id="zeugma-hidden-portal-container",u.style.display="none",document.body.appendChild(u)),u.appendChild(i);}},[t,s]),Yt.useEffect(()=>()=>{o.current&&o.current.remove();},[]),!s)return null;o.current||(o.current=document.createElement("div"),o.current.className=`zeugma-portal-wrapper-${e}`,o.current.style.width="100%",o.current.style.height="100%");let a=o.current;return !a||!n?null:reactDom.createPortal(n(e),a)});var Kt=e=>{let t=e,{renderPane:n,renderWidget:s,renderDragOverlay:r,classNames:o={},children:a,layout:i,setLayout:u,fullscreenPaneId:g,setFullscreenPaneId:p,locked:f,setLocked:h,findPaneById:C,findPaneContainingTab:D,findTabById:M,activeId:m,activeType:N,dismissIntentId:v,setContainerRef:y,snapThreshold:P,minSplitPercentage:Z,maxSplitPercentage:z,onRemove:F,onResizeStart:B,onResize:A,onResizeEnd:J,removePane:V,addPane:W,addTab:G,updateTabMetadata:K,updatePaneLock:d,selectTab:w,mergeTab:$,removeTab:I,splitPane:x,updateSplitPercentage:l,moveTab:S}=t,{portalTargets:Q,registerPortalTarget:R}=tt(),[T,Y]=Yt.useState(null),[O,ee]=Yt.useState(null),ae=ct({...t,setOverTabId:Y,setOverTabPosition:ee}),b=Yt.useCallback(j=>n(j),[n]),E=Yt.useMemo(()=>o,[o.dashboard,o.dashboardDismissActive,o.pane,o.paneLocked,o.dropPreview,o.dragOverlay,o.resizer,o.dismissPreview,o.dashboardLocked,o.lockedPreview,o.tabDropPreview,o.tabSeparator]),k=Yt.useCallback((j,oe)=>{J&&J(j,oe);},[J]),re=Yt.useMemo(()=>({layout:i,setLayout:u,renderPane:b,activeId:m,activeType:N,dismissIntentId:v,setContainerRef:y,fullscreenPaneId:g,classNames:E,onRemove:F,onFullscreenChange:p,snapThreshold:P,onResizeStart:B,onResize:A,onResizeEnd:k,minSplitPercentage:Z,maxSplitPercentage:z,locked:f,setLocked:h,findPaneById:C,findPaneContainingTab:D,findTabById:M}),[i,m,N,v,y,g,E,F,p,P,B,A,Z,z,u,b,k,f,h,C,D,M]),te=Yt.useMemo(()=>({overTabId:T,overTabPosition:O}),[T,O]),U=Yt.useMemo(()=>({removePane:V,addPane:W,addTab:G,updateTabMetadata:K,updatePaneLock:d,selectTab:w,mergeTab:$,removeTab:I,setFullscreenPaneId:p,setLocked:h,splitPane:x,updateSplitPercentage:l,moveTab:S}),[V,W,G,K,d,w,$,I,p,h,x,l,S]),ce=Yt.useMemo(()=>{let j=[];function oe(se){se&&(se.type==="pane"?j.push(...se.tabs):(oe(se.first),oe(se.second)));}return oe(i),j},[i]),Pe=Yt.useMemo(()=>({registerPortalTarget:R}),[R]);return jsxRuntime.jsx(We.Provider,{value:U,children:jsxRuntime.jsx(Be.Provider,{value:re,children:jsxRuntime.jsx(Ue.Provider,{value:te,children:jsxRuntime.jsxs(Me.Provider,{value:Pe,children:[jsxRuntime.jsx(core.DndContext,{id:"zeugma-dnd-context",...ae,children:a}),m&&N&&r&&jsxRuntime.jsx(ut,{activeId:m,render:j=>r(j,N),className:`${o.dragOverlay||""} ${m===v&&o.dismissPreview||""}`.trim()}),jsxRuntime.jsx("div",{id:"zeugma-portal-host",style:{display:"none"},children:ce.map(j=>jsxRuntime.jsx(dt,{tabId:j,target:Q[j]||null,renderWidget:s},j))})]})})})})};function Ye({containerRef:e,isRow:t,direction:n,splitPercentage:s,resizerSize:r,snapThreshold:o,layout:a,currentNode:i,onLayoutChange:u,onResizeStart:g,onResizeEnd:p,parentLeft:f,parentTop:h,parentWidth:C,parentHeight:D}){let{onResizeStart:M,onResize:m,onResizeEnd:N,minSplitPercentage:v=5,maxSplitPercentage:y=95,locked:P=false}=ie();return Yt.useCallback(Z=>{if(P)return;Z.preventDefault();let z=e.current;if(!z)return;g&&g(),M&&M(i);let F=z.getBoundingClientRect(),B=Z.clientX,A=Z.clientY,J=s,V=Z.currentTarget,W=F.left+F.width*(f/100),G=F.top+F.height*(h/100),K=F.width*(C/100),d=F.height*(D/100),$=Array.from(document.querySelectorAll('div[role="separator"][data-direction]')).filter(x=>x!==V&&x.getAttribute("data-direction")===n).map(x=>{let l=x.getBoundingClientRect();return t?l.left+l.width/2:l.top+l.height/2}),I=J;Ne({cursor:t?"col-resize":"row-resize",resizerEl:V,onMove:x=>{let l=t?(x.clientX-B)/K*100:(x.clientY-A)/d*100,S=J+l,Q=t?W+(K-r)*(S/100)+r/2:G+(d-r)*(S/100)+r/2,R=1/0,T=null;for(let ae of $){let b=Math.abs(Q-ae);b<o&&b<R&&(R=b,T=ae);}let Y=S;T!==null&&(Y=t?(T-r/2-W)/(K-r)*100:(T-r/2-G)/(d-r)*100);let O=Math.max(v,Math.min(y,Y));I=O;let ee=ge(a,i,O);if(ee){let{panes:ae,splitters:b}=ue(ee),E=e.current;if(E){for(let k of ae)E.style.setProperty(`--pane-left-${k.paneId}`,`${k.left}%`),E.style.setProperty(`--pane-top-${k.paneId}`,`${k.top}%`),E.style.setProperty(`--pane-width-${k.paneId}`,`${k.width}%`),E.style.setProperty(`--pane-height-${k.paneId}`,`${k.height}%`);for(let k of b)E.style.setProperty(`--splitter-pos-${k.id}`,`${k.direction==="row"?k.left:k.top}%`);}}m&&m(i,O);},onEnd:()=>{let x=ge(a,i,I),l=e.current;if(l){let{panes:S,splitters:Q}=ue(x);for(let R of S)l.style.removeProperty(`--pane-left-${R.paneId}`),l.style.removeProperty(`--pane-top-${R.paneId}`),l.style.removeProperty(`--pane-width-${R.paneId}`),l.style.removeProperty(`--pane-height-${R.paneId}`);for(let R of Q)l.style.removeProperty(`--splitter-pos-${R.id}`);}u(x),p&&p(),N&&N(i,I);}});},[e,t,n,s,r,o,a,i,u,g,p,M,m,N,v,y,f,h,C,D])}var on=({splitter:e,resizerSize:t,snapThreshold:n,containerRef:s})=>{let{layout:r,setLayout:o,classNames:a,locked:i}=ie(),[u,g]=Yt.useState(false),{currentNode:p,direction:f,left:h,top:C,width:D,height:M,parentLeft:m,parentTop:N,parentWidth:v,parentHeight:y}=e,P=f==="row",Z=Ye({containerRef:s,isRow:P,direction:f,splitPercentage:p.splitPercentage,resizerSize:t,snapThreshold:n,layout:r,currentNode:p,onLayoutChange:o,onResizeStart:()=>g(true),onResizeEnd:()=>g(false),parentLeft:m,parentTop:N,parentWidth:v,parentHeight:y}),z=P?{position:"absolute",left:`calc(var(--splitter-pos-${e.id}, ${h}%) - ${t/2}px)`,top:`calc(${C}% + ${t/2}px)`,width:`${t}px`,height:`calc(${M}% - ${t}px)`,cursor:i?"default":"col-resize",pointerEvents:i?"none":"auto",zIndex:10,userSelect:"none",touchAction:"none",boxSizing:"border-box"}:{position:"absolute",left:`calc(${h}% + ${t/2}px)`,top:`calc(var(--splitter-pos-${e.id}, ${C}%) - ${t/2}px)`,width:`calc(${D}% - ${t}px)`,height:`${t}px`,cursor:i?"default":"row-resize",pointerEvents:i?"none":"auto",zIndex:10,userSelect:"none",touchAction:"none",boxSizing:"border-box"};return jsxRuntime.jsx("div",{className:a.resizer||"","data-direction":f,"data-resizing":u||void 0,style:z,onPointerDown:Z,role:"separator","aria-valuenow":p.splitPercentage,"aria-valuemin":5,"aria-valuemax":95})},sn=Yt__default.default.memo(({paneId:e,renderPane:t})=>jsxRuntime.jsx(jsxRuntime.Fragment,{children:t(e)}),(e,t)=>e.paneId===t.paneId&&e.renderPane===t.renderPane),an=({tree:e,resizerSize:t=4,snapThreshold:n})=>{let{layout:s,renderPane:r,activeId:o,dismissIntentId:a,setContainerRef:i,fullscreenPaneId:u,snapThreshold:g,locked:p,classNames:f}=ie(),h=n!==void 0?n:g??8,C=e!==void 0?e:s,D=Yt.useRef(null),{panes:M,splitters:m}=Yt.useMemo(()=>C?ue(C):{panes:[],splitters:[]},[C]);if(!C)return null;let N=()=>jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[M.map(v=>{let y=u===v.paneId;return jsxRuntime.jsx("div",{style:{position:"absolute",left:y?"0%":`var(--pane-left-${v.paneId}, ${v.left}%)`,top:y?"0%":`var(--pane-top-${v.paneId}, ${v.top}%)`,width:y?"100%":`var(--pane-width-${v.paneId}, ${v.width}%)`,height:y?"100%":`var(--pane-height-${v.paneId}, ${v.height}%)`,overflow:"hidden",zIndex:y?20:1,display:u&&!y?"none":"block",padding:y?"0px":`${t/2}px`,boxSizing:"border-box"},children:jsxRuntime.jsx(sn,{paneId:v.paneId,renderPane:r})},v.paneId)}),!u&&m.map(v=>jsxRuntime.jsx(on,{splitter:v,resizerSize:t,snapThreshold:h,containerRef:D},v.id))]});if(e===void 0){let v=o!==null&&o===a,y=Z=>{i(Z),D.current=Z;},P=`${f.dashboard||""} ${v&&f.dashboardDismissActive||""} ${p&&f.dashboardLocked||""}`.trim();return jsxRuntime.jsx("div",{ref:y,className:P,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden"},children:N()})}return jsxRuntime.jsx("div",{ref:D,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden"},children:N()})};var ht="zeugma-height:",dn="default-pane";function pn(e){try{let t=localStorage.getItem(ht+e);if(t!==null){let n=Number(t);if(Number.isFinite(n)&&n>0)return n}}catch{}return null}function vt(e,t){try{localStorage.setItem(ht+e,String(Math.round(t)));}catch{}}var Pt=({children:e,active:t=true,height:n,onHeightChange:s,minHeight:r=100,maxHeight:o=1/0,persist:a,localStorageKey:i,resizerHeight:u=6,className:g,resizerClassName:p})=>{let f=a?i||dn:null,h=()=>{let P=(f?pn(f):null)??n??400;return ze(P,r,o)},[C,D]=Yt.useState(h),M=Yt.useRef(null),m=f?C:n??C,N=Yt.useRef(n);Yt.useEffect(()=>{if(n!==void 0&&n!==N.current){let P=ze(n,r,o);D(P),f&&vt(f,P);}N.current=n;},[n,r,o,f]);let v=Yt.useCallback(()=>o,[o]),y=Yt.useCallback(P=>{P.preventDefault();let Z=P.clientY,z=m,F=v(),B=P.currentTarget,A=Tt(M.current),J=A?A.scrollTop:0,V=Z,W=null,G=(d,w)=>{let $=w-J,x=d-Z+$,l=ze(z+x,r,F);return M.current&&(M.current.style.height=`${l}px`),l},K=()=>{if(!A)return;let d=A===document.documentElement||A===document.body?{top:0,bottom:window.innerHeight}:A.getBoundingClientRect(),w=40,$=10,I=0;V>d.bottom-w?I=Math.min(1,(V-(d.bottom-w))/w)*$:V<d.top+w&&(I=-Math.min(1,(d.top+w-V)/w)*$),I!==0&&(A.scrollTop+=I,G(V,A.scrollTop)),W=requestAnimationFrame(K);};W=requestAnimationFrame(K),Ne({cursor:"row-resize",resizerEl:B,onMove:d=>{V=d.clientY,A&&G(V,A.scrollTop);},onEnd:()=>{W!==null&&cancelAnimationFrame(W);let d=z;M.current&&(d=M.current.getBoundingClientRect().height),d=ze(d,r,F),D(d),s&&s(d),f&&vt(f,d);}});},[m,r,v,s,f]);return t?jsxRuntime.jsxs("div",{ref:M,className:g,style:{height:`${m}px`,position:"relative",overflow:"hidden",boxSizing:"border-box"},children:[jsxRuntime.jsx("div",{style:{height:`calc(100% - ${u}px)`,overflow:"hidden"},children:e}),jsxRuntime.jsx("div",{className:p,style:{height:`${u}px`,cursor:"row-resize",position:"relative",zIndex:10,userSelect:"none",touchAction:"none",boxSizing:"border-box",flexShrink:0},onPointerDown:y,role:"separator","aria-orientation":"horizontal","aria-valuenow":Math.round(m),"aria-valuemin":r,"aria-valuemax":o===1/0?void 0:o})]}):jsxRuntime.jsx("div",{className:g,style:{height:"100%",position:"relative",overflow:"hidden",boxSizing:"border-box"},children:jsxRuntime.jsx("div",{style:{height:"100%",overflow:"hidden"},children:e})})};function ze(e,t,n){return Math.max(t,Math.min(n,e))}function Tt(e){if(typeof window>"u"||!e)return null;let t=e.parentElement;if(!t)return document.documentElement;let s=window.getComputedStyle(t).overflowY;return s==="auto"||s==="scroll"?t:Tt(t)}var He=Yt.createContext(null);var xn={top:{position:"absolute",top:0,left:"25%",width:"50%",height:"25%",zIndex:20,pointerEvents:"auto"},bottom:{position:"absolute",bottom:0,left:"25%",width:"50%",height:"25%",zIndex:20,pointerEvents:"auto"},left:{position:"absolute",top:"25%",left:0,width:"25%",height:"50%",zIndex:20,pointerEvents:"auto"},right:{position:"absolute",top:"25%",right:0,width:"25%",height:"50%",zIndex:20,pointerEvents:"auto"},full:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:20,pointerEvents:"auto",cursor:"not-allowed"}},yn={top:{position:"absolute",top:0,left:0,right:0,height:"50%",zIndex:21,pointerEvents:"none",boxSizing:"border-box"},bottom:{position:"absolute",bottom:0,left:0,right:0,height:"50%",zIndex:21,pointerEvents:"none",boxSizing:"border-box"},left:{position:"absolute",top:0,bottom:0,left:0,width:"50%",zIndex:21,pointerEvents:"none",boxSizing:"border-box"},right:{position:"absolute",top:0,bottom:0,right:0,width:"50%",zIndex:21,pointerEvents:"none",boxSizing:"border-box"},full:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:21,pointerEvents:"none",boxSizing:"border-box"}},xt=({id:e,position:t,activeClassName:n})=>{let{setNodeRef:s,isOver:r}=core.useDroppable({id:e});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("div",{ref:s,style:xn[t]}),r&&jsxRuntime.jsx("div",{className:n,style:yn[t]})]})},Sn=({id:e,children:t,style:n,locked:s=false})=>{let r=Yt.useRef(null),{layout:o,activeId:a,classNames:i,fullscreenPaneId:u,onFullscreenChange:g,locked:p}=ie(),{removePane:f,updateTabMetadata:h,selectTab:C,removeTab:D}=Le(),M=Yt.useContext(Me);if(!M)throw new Error("Pane must be used within a Zeugma provider");let{registerPortalTarget:m}=M,N=Yt.useMemo(()=>ne(o,e),[o,e]),v=N?.id??e,y=N?.tabs??[e],P=N?.activeTabId??e,Z=N?.tabsMetadata,z=Z?.[e],F=N?.locked??false,B=s||F,A=p||B,J=p||B,V=a!==null&&a!==e&&(!y.includes(a)||y.length>1)&&!J,{attributes:W,listeners:G,setNodeRef:K}=core.useDraggable({id:e,disabled:A}),d=a!==null&&y.includes(a),w=u===e,$=Yt.useCallback(()=>jsxRuntime.jsx("div",{ref:r,id:`zeugma-tab-target-${P}`,className:"zeugma-tab-content-wrapper",style:{height:"100%",width:"100%"}}),[P]);Yt.useEffect(()=>{let S=r.current;return m(P,S),()=>{m(P,null);}},[P,m]);let I=Yt.useMemo(()=>({isDragging:d,isFullscreen:w,toggleFullscreen:()=>g?.(w?null:e),remove:()=>{w&&g?.(null),f(v);},metadata:z,updateMetadata:S=>{h(e,S);},locked:A,tabs:y,activeTabId:P,selectTab:S=>C(v,S),removeTab:S=>{w&&S===P&&g?.(null),D(S);},tabsMetadata:Z,updateTabMetadata:(S,Q)=>{h(S,Q);},renderActiveTab:$}),[d,w,g,e,D,z,h,A,y,P,C,v,Z,$]),x=Yt.useMemo(()=>A?{disabled:true}:{...G,...W},[G,W,A]),l=`${i.pane||""} ${B&&i.paneLocked||""}`.trim();return jsxRuntime.jsx(He.Provider,{value:x,children:jsxRuntime.jsxs("div",{ref:K,className:l,style:{position:"relative",width:"100%",height:"100%",...n},children:[t(I),V&&jsxRuntime.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:15,pointerEvents:"none"},children:["top","bottom","left","right"].map(S=>jsxRuntime.jsx(xt,{id:`drop-${S}-${e}`,position:S,activeClassName:i.dropPreview},S))}),a!==null&&a!==e&&J&&jsxRuntime.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:15,pointerEvents:"none"},children:jsxRuntime.jsx(xt,{id:`drop-locked-${e}`,position:"full",activeClassName:i.lockedPreview||""})})]})})};var Dn=({children:e,className:t,style:n})=>{let s=Yt.useContext(He);if(!s)throw new Error("<DragHandle> must be used inside a <Pane>");let{disabled:r,...o}=s;return jsxRuntime.jsx("div",{className:t,style:{cursor:r?"default":"grab",userSelect:r?"auto":"none",touchAction:r?"auto":"none",...n},...r?{}:o,children:e})};var Ct=Yt.createContext(void 0),Ln=()=>{let e=Yt.useContext(Ct);if(!e)throw new Error("useTabContext must be used within a Tab component");return e},Dt=({id:e,locked:t=false,children:n,className:s,style:r})=>{let{locked:o,classNames:a={},activeType:i}=ie(),{overTabId:u,overTabPosition:g}=it(),p=Yt.useContext(Je),f=t||o||(p?.locked??false),{attributes:h,listeners:C,setNodeRef:D,isDragging:M}=core.useDraggable({id:`tab-header-${e}`,disabled:f}),{setNodeRef:m,isOver:N}=core.useDroppable({id:`tab-drop-${e}`,disabled:f||i==="pane"}),v=w=>{D(w),m(w);},y=N&&u===e,P=y?g:null,Z=y&&P?jsxRuntime.jsx("div",{className:a.tabDropPreview,style:{left:P==="before"?0:void 0,right:P==="after"?0:void 0}}):null,z=p?.tabs||[],F=z.indexOf(e),B=p?.activeTabId,J=F>0&&e!==B&&z[F-1]!==B?jsxRuntime.jsx("div",{className:a.tabSeparator}):null,V=p?p.activeTabId===e:false,W=p?.tabsMetadata?.[e],G=Yt.useCallback(()=>{p?.selectTab(e);},[p,e]),K=Yt.useCallback(()=>{p?.removeTab(e);},[p,e]),d=Yt.useMemo(()=>({tabId:e,isActive:V,isDragging:M,isOver:y,metadata:W,locked:f,selectTab:G,removeTab:K}),[e,V,M,y,W,f,G,K]);return jsxRuntime.jsx(Ct.Provider,{value:d,children:jsxRuntime.jsxs("div",{ref:v,className:s,style:{display:"inline-flex",position:"relative",cursor:f?"default":"grab",...r},...f?{}:C,...f?{}:h,children:[J,n({isDragging:M,isOver:y}),Z]})})};var Je=Yt.createContext(void 0);var wt=(e,t)=>typeof e=="function"?e(t):e,zn=({tabs:e,activeTabId:t,locked:n=false,tabsMetadata:s,selectTab:r,removeTab:o,renderTab:a,classNames:i,styles:u})=>{let g=Yt.useMemo(()=>({tabs:e,activeTabId:t,locked:n,tabsMetadata:s,selectTab:r,removeTab:o}),[e,t,n,s,r,o]);return jsxRuntime.jsx(Je.Provider,{value:g,children:jsxRuntime.jsx("div",{className:i?.container,style:{display:"flex",alignItems:"center",height:"100%",...u?.container},children:e.map(p=>{let f=s?.[p],h=wt(i?.tab,p),C=wt(u?.tab,p);return jsxRuntime.jsx(Dt,{id:p,locked:n,className:h,style:C,children:({isDragging:D,isOver:M})=>a({tabId:p,activeTabId:t,isDragging:D,isOver:M,metadata:f,selectTab:r,removeTab:o})},p)})})})};exports.DEFAULT_DRAG_ACTIVATION_DISTANCE=Lt;exports.DEFAULT_RESIZER_SIZE=Vn;exports.DEFAULT_SNAP_THRESHOLD=Mt;exports.DragHandle=Dn;exports.Pane=Sn;exports.PaneTree=an;exports.PortalRegistryContext=Me;exports.ResizableContainer=Pt;exports.Tabs=zn;exports.Zeugma=Kt;exports.ZeugmaActionsContext=We;exports.ZeugmaDragContext=Ue;exports.ZeugmaStateContext=Be;exports.createDragSession=Ne;exports.safeJsonStringify=Se;exports.useResizer=Ye;exports.useTabContext=Ln;exports.useZeugma=Zt;exports.useZeugmaActions=Le;exports.useZeugmaContext=kt;exports.useZeugmaDrag=it;exports.useZeugmaState=ie;//# sourceMappingURL=index.cjs.map
|
|
7
7
|
//# sourceMappingURL=index.cjs.map
|