@aiquants/resize-panels 0.3.0 → 0.4.0

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.umd.js CHANGED
@@ -1,4 +1,4 @@
1
- (function(le,m){typeof exports=="object"&&typeof module<"u"?m(exports,require("react"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react","react-dom"],m):(le=typeof globalThis<"u"?globalThis:le||self,m(le.AiquantsResizePanels={},le.React,le.ReactDOM))})(this,(function(le,m,Wt){"use strict";const Ve=m.createContext(null),Be=()=>{const e=m.useContext(Ve);if(!e)throw new Error("usePanelGroup must be used within a PanelGroup");return e},rt=(e,t=0)=>{if(!Number.isFinite(e))return e;const n=10**t,o=e*n,i=Math.floor(o),s=o-i,a=Number.EPSILON*Math.max(1,Math.abs(o));return s<.5-a?i/n:s>.5+a?(i+1)/n:(i%2===0?i:i+1)/n},it=12,ot=8,Ut=8,Vt=8,st=.05,at=10,Yt=.05,Xt=20,Jt=.05,Ye=0,lt=0,ct=6,pe=(e,t)=>t<=0?0:rt(e/t*100,ct),Ie=(e,t)=>!e||t<=0?0:e/100*t,ke=(e,t="percentage")=>{if(e!==void 0)return typeof e=="number"?{value:e,unit:t}:e},dt=(e,t)=>e?e.unit==="percentage"?e.value/100*t:e.value:0,ie=(e,t,n)=>e?typeof e=="number"?e/100*n:e.unit==="pixels"?e.value:e.value/100*n:t,me=(e,t,n)=>Math.min(Math.max(e,t),n),Xe=e=>{if(!Number.isFinite(e)||e<=0)return lt;const t=e*st,n=Math.min(it,at,t);return Math.max(lt,n)},Je=(e,t,n)=>{if(Math.abs(t)<=0)return t;const o=e.map((l,c)=>({panel:l,index:c})).filter(({panel:l})=>!l.collapsed&&(l.sizeUnit==="pixels"||l.originalPixelSize!==void 0));if(o.length===0)return t;const i=[...o].sort((l,c)=>{const y=l.panel.pixelAdjustPriority??l.index+1,S=c.panel.pixelAdjustPriority??c.index+1;return y===S?l.index-c.index:y-S});let s=t;return(()=>{for(const{index:l}of i){if(Math.abs(s)<=0)break;const c=e[l];if(!c||c.collapsed)continue;const y=ke(c.minSize,"pixels"),S=ke(c.maxSize,"pixels"),f=y?dt(y,n):0,d=S?dt(S,n):n;if(s>0){if(Math.abs(c.size)<=0&&(c.percentageSize??0)<=0)continue;const w=Math.max(0,d-c.size);if(w<=0)continue;const C=Math.min(w,s);if(C<=0)continue;const k=c.size+C,p=pe(k,n),b=c.collapsible?k:c.sizeBeforeCollapse,E=c.collapsible?c.measuredPixelSizeBeforeCollapse??c.measuredPixelSize??k:c.measuredPixelSizeBeforeCollapse;e[l]={...c,size:k,percentageSize:p,originalPixelSize:c.originalPixelSize!==void 0?c.originalPixelSize:k,sizeBeforeCollapse:b,measuredPixelSizeBeforeCollapse:E},s-=C}else{const x=Math.max(0,c.size-f);if(x<=0)continue;const w=Math.min(x,Math.abs(s));if(w<=0)continue;const C=c.size-w,k=pe(C,n),p=c.collapsible?C:c.sizeBeforeCollapse,b=c.collapsible?c.measuredPixelSizeBeforeCollapse??c.measuredPixelSize??C:c.measuredPixelSizeBeforeCollapse;e[l]={...c,size:C,percentageSize:k,originalPixelSize:c.originalPixelSize!==void 0?c.originalPixelSize:C,sizeBeforeCollapse:p,measuredPixelSizeBeforeCollapse:b},s+=w}}})(),s},Le=e=>{if(!e)return 0;const t=parseFloat(e);return Number.isFinite(t)?t:0},be=(e,t)=>{const n=e.getBoundingClientRect(),o=typeof window<"u"?window.getComputedStyle(e):null,i=o?Le(o.borderLeftWidth)+Le(o.borderRightWidth):0,s=o?Le(o.borderTopWidth)+Le(o.borderBottomWidth):0;if(t==="horizontal"){const y=n.width>0?n.width:e.offsetWidth,S=n.width>0?Math.max(0,n.width-i):e.clientWidth,f=e.offsetWidth>0?e.offsetWidth:e.clientWidth+i;return{inner:S>0?S:Math.max(0,e.clientWidth),outer:y>0?y:Math.max(0,f)}}const a=n.height>0?n.height:e.offsetHeight,l=n.height>0?Math.max(0,n.height-s):e.clientHeight,c=e.offsetHeight>0?e.offsetHeight:e.clientHeight+s;return{inner:l>0?l:Math.max(0,e.clientHeight),outer:a>0?a:Math.max(0,c)}};let ut=0,ft=0;const pt=()=>typeof window>"u"?(ut+=1,`panel-server-${ut}`):`panel-${Date.now()}-${Math.random().toString(36).substr(2,5)}`,Zt=()=>typeof window>"u"?(ft+=1,`resize-handle-server-${ft}`):`resize-handle-${Date.now()}-${Math.random().toString(36).substr(2,5)}`,mt=(e,t)=>{try{localStorage.setItem(`panel-layout-${e}`,JSON.stringify(t))}catch(n){console.warn("Failed to save panel layout:",n)}},gt=e=>{try{const t=localStorage.getItem(`panel-layout-${e}`);return t?JSON.parse(t):null}catch(t){return console.warn("Failed to load panel layout:",t),null}},Ze=(e,t)=>{const n=e.map(d=>{if(d.collapsed)return{...d,size:0,percentageSize:0};if(d.sizeUnit==="pixels"||d.originalPixelSize!==void 0){const x=ie(d.minSize,0,t),w=ie(d.maxSize,t,t),C=me(d.size,x,w);let k=C,p=Math.abs(C-d.size)>Ye,b=d.size;if(d.originalPixelSize!==void 0&&Math.abs(d.size-d.originalPixelSize)<=Ye&&(b=d.originalPixelSize),b!==void 0){const E=me(b,x,w);E>k+Ye&&(k=E,p=!0)}if(p){const E=pe(k,t),U=d.collapsible?k:d.sizeBeforeCollapse,K=d.collapsible?d.measuredPixelSizeBeforeCollapse??d.measuredPixelSize??k:d.measuredPixelSizeBeforeCollapse;return{...d,size:k,percentageSize:E,sizeBeforeCollapse:U,measuredPixelSizeBeforeCollapse:K}}}if(d.sizeUnit==="percentage"&&(!d.percentageSize||d.percentageSize<=0)&&d.size>0){const x=pe(d.size,t);return{...d,percentageSize:x}}return d}),o=n.reduce((d,x)=>x.collapsed?d:x.sizeUnit==="pixels"||x.originalPixelSize!==void 0?d+x.size:d,0),i=()=>{const d=n.map((p,b)=>({panel:p,index:b})).filter(({panel:p})=>!p.collapsed&&(p.sizeUnit==="pixels"||p.originalPixelSize!==void 0));if(d.length===0)return n;const x=d.reduce((p,{panel:b})=>p+b.size,0),w=t-x;if(Math.abs(w)<=.1)return n;const C=[...d].sort((p,b)=>{const E=p.panel.pixelAdjustPriority??p.index+1,U=b.panel.pixelAdjustPriority??b.index+1;return E===U?p.index-b.index:E-U});let k=w;for(const{panel:p,index:b}of C){if(Math.abs(k)<=.1)break;const E=ie(p.minSize,0,t),U=ie(p.maxSize,t,t),K=p.size;if(k>0){const W=Math.max(0,U-K);if(W<=0)continue;const B=Math.min(W,k),M=K+B,Q=pe(M,t),H=p.collapsible?M:p.sizeBeforeCollapse,J=p.collapsible?p.measuredPixelSizeBeforeCollapse??p.measuredPixelSize??M:p.measuredPixelSizeBeforeCollapse;n[b]={...p,size:M,percentageSize:Q,sizeBeforeCollapse:H,measuredPixelSizeBeforeCollapse:J},k-=B}else{const W=Math.max(0,K-E);if(W<=0)continue;const B=Math.min(W,Math.abs(k)),M=K-B,Q=pe(M,t),H=p.collapsible?M:p.sizeBeforeCollapse,J=p.collapsible?p.measuredPixelSizeBeforeCollapse??p.measuredPixelSize??M:p.measuredPixelSizeBeforeCollapse;n[b]={...p,size:M,percentageSize:Q,sizeBeforeCollapse:H,measuredPixelSizeBeforeCollapse:J},k+=B}}return n},s=n.reduce((d,x,w)=>(!x.collapsed&&x.sizeUnit==="percentage"&&x.originalPixelSize===void 0&&d.push(w),d),[]);if(s.length===0)return i();const a=Math.max(0,t-o),l=s.map(d=>{const x=n[d];return x.percentageSize!==void 0&&x.percentageSize>0?Ie(x.percentageSize,t):x.size>0?x.size:0}),c=l.reduce((d,x)=>x>0?d+x:d,0);if(c<=0)return i();const y=[...n];let S=0;s.forEach((d,x)=>{const w=y[d],C=l[x];let k;if(C>0){const W=C/c;k=a*W}else k=w.size;const p=ie(w.minSize,0,t),b=ie(w.maxSize,t,t);k=me(k,p,b),S+=k;const E=pe(k,t),U=w.collapsible?k:w.sizeBeforeCollapse,K=w.collapsible?w.measuredPixelSizeBeforeCollapse??w.measuredPixelSize??k:w.measuredPixelSizeBeforeCollapse;y[d]={...w,size:k,percentageSize:E,sizeBeforeCollapse:U,measuredPixelSizeBeforeCollapse:K}});const f=a-S;return Math.abs(f)>.1&&Je(y,f,t),we(y)},we=e=>{let t=0;for(const i of e)i.collapsed||(t+=Math.max(i.size,0));if(t<=0){let i=!1;const s=e.map(a=>(a.percentageSize??0)!==0?(i=!0,{...a,percentageSize:0,measuredPercentageSize:a.measuredPercentageSize!==void 0?0:a.measuredPercentageSize}):!a.collapsed&&a.sizeBeforeCollapse!==a.size?(i=!0,{...a,sizeBeforeCollapse:a.size}):a);return i?s:e}let n=!1;const o=e.map(i=>{if(i.collapsed)return(i.percentageSize??0)!==0?(n=!0,{...i,percentageSize:0,measuredPercentageSize:i.measuredPercentageSize!==void 0?0:i.measuredPercentageSize}):i;const s=pe(i.size,t),a=i.measuredPercentageSize,y=(a!==void 0?Math.abs(a-s):1/0)<1e-4&&a!==void 0?a:s,S=rt(y,ct),d=Math.abs((i.percentageSize??0)-S)>0||i.percentageSize===void 0,x=i.sizeBeforeCollapse===void 0||i.sizeBeforeCollapse!==i.size,w=i.collapsible&&x,C=i.measuredPixelSize??i.size,k=i.collapsible&&(i.measuredPixelSizeBeforeCollapse===void 0||i.measuredPixelSizeBeforeCollapse!==C);if(!(d||w||k))return i;n=!0;const p=w?i.size:i.sizeBeforeCollapse,b=k?C:i.measuredPixelSizeBeforeCollapse;return{...i,percentageSize:S,sizeBeforeCollapse:p,measuredPixelSizeBeforeCollapse:b}});return n?o:e},De=(e,t)=>{if(t<=0)return!1;const n=[];let o=0;for(let S=0;S<e.length;S+=1){const f=e[S];!f||f.collapsed||(n.push(S),o+=f.size)}if(n.length===0)return!1;let i=t-o;if(Math.abs(i)<=0)return!1;let s=!1;const a=S=>{const f=e[S],d=ie(f.minSize,0,t),x=ie(f.maxSize,t,t),w=f.sizeUnit==="percentage"&&f.originalPixelSize===void 0;return{index:S,minSize:d,maxSize:x,isFlexible:w}},l=(S,f)=>{if(!Number.isFinite(f)||Math.abs(f)<=0)return;const d=e[S];if(!d)return;const x=Math.max(0,d.size+f);if(Math.abs(x-d.size)<=0)return;const w=pe(x,t),C=d.collapsible?x:d.sizeBeforeCollapse,k=d.collapsible?d.measuredPixelSizeBeforeCollapse??d.measuredPixelSize??x:d.measuredPixelSizeBeforeCollapse;e[S]={...d,size:x,percentageSize:w,sizeBeforeCollapse:C,measuredPixelSizeBeforeCollapse:k,measuredPixelSize:void 0,measuredPercentageSize:void 0},i-=f,s=!0},c=S=>{for(const f of S){if(Math.abs(i)<=0)break;const d=e[f.index];if(!d||d.collapsed)continue;const x=d.size;if(i>0){const w=Math.max(0,f.maxSize-x);if(w<=0)continue;const C=Math.min(w,i);if(C<=0)continue;l(f.index,C)}else{const w=Math.max(0,x-f.minSize);if(w<=0)continue;const C=Math.min(w,Math.abs(i));if(C<=0)continue;l(f.index,-C)}}},y=n.map(S=>a(S)).filter(S=>S.isFlexible);if(y.length>0&&c(y),Math.abs(i)>0){const S=i;i=Je(e,i,t),Math.abs(i-S)>0&&(s=!0)}return s},ht=(e,t,n)=>{if(!(e.sizeUnit==="pixels"||e.originalPixelSize!==void 0)||e.pixelAdjustPriority!==void 0)return e;const i=t.filter((a,l)=>l!==n&&(a.sizeUnit==="pixels"||a.originalPixelSize!==void 0)).map(a=>a.pixelAdjustPriority).filter(a=>a!==void 0),s=i.length>0?Math.max(...i)+1:1;return{...e,pixelAdjustPriority:s}},Qt=(e,t)=>{switch(t.type){case"REGISTER_PANEL":{console.log("REGISTER_PANEL",t.panel);const n=e.findIndex(s=>s.id===t.panel.id);if(n>=0){const s=[...e],a=e[n],l={...a,minSize:t.panel.minSize,maxSize:t.panel.maxSize,collapsible:t.panel.collapsible,sizeUnit:t.panel.sizeUnit,originalPixelSize:t.panel.originalPixelSize,pixelAdjustPriority:t.panel.pixelAdjustPriority!==void 0?t.panel.pixelAdjustPriority:a.pixelAdjustPriority},c=ht(l,e,n);return s[n]=c,s}const o={...t.panel},i=ht(o,e);return[...e,i]}case"UNREGISTER_PANEL":{console.log("UNREGISTER_PANEL",t.id);const n=e.filter(o=>o.id!==t.id);return we(n)}case"RESIZE_PANELS":{console.log("RESIZE_PANELS",t.leftId,t.rightId,t.leftSize,t.rightSize);const n=e.findIndex(I=>I.id===t.leftId),o=e.findIndex(I=>I.id===t.rightId);if(n===-1||o===-1)return e;const i=[...e],s=i[n],a=i[o];if(s.collapsed||a.collapsed||t.leftSize===s.size&&t.rightSize===a.size)return e;const l=t.containerSize??e.reduce((I,G)=>I+G.size,0),c=ie(s.minSize,0,l),y=ie(s.maxSize,l,l),S=ie(a.minSize,0,l),f=ie(a.maxSize,l,l),d=s.size+a.size,x=e.reduce((I,G)=>G.collapsed?I:I+G.size,0),w=x-d,C=c+S,k=y+f,p=me(t.leftSize+t.rightSize,C,k);let b=l>0?l-w:p;Number.isFinite(b)||(b=p);const E=me(Math.max(p,b),C,k),U=I=>({min:Math.max(c,I-f),max:Math.min(y,I-S)}),K=I=>({min:Math.max(S,I-y),max:Math.min(f,I-c)}),W=Math.abs(t.leftSize-s.size),B=Math.abs(t.rightSize-a.size),M=W>=B;let Q=s.size,H=a.size;if(M){const I=U(E);if(I.min>I.max)return e;const G=me(t.leftSize,I.min,I.max),v=E-G;if(v<S||v>f)return e;Q=G,H=v}else{const I=K(E);if(I.min>I.max)return e;const G=me(t.rightSize,I.min,I.max),v=E-G;if(v<c||v>y)return e;H=G,Q=v}const J=Q+H;if(E!==J)return e;const ne=x-s.size-a.size+J,X=l>0?l:ne,ee=X>0?pe(Q,X):0,V=X>0?pe(H,X):0;return i[n]={...s,size:Q,percentageSize:ee,sizeBeforeCollapse:s.collapsible?Q:s.sizeBeforeCollapse,measuredPixelSize:void 0,measuredPercentageSize:void 0},i[o]={...a,size:H,percentageSize:V,sizeBeforeCollapse:a.collapsible?H:a.sizeBeforeCollapse,measuredPixelSize:void 0,measuredPercentageSize:void 0},l>0&&De(i,l)?we(i):i}case"SET_PANELS":return console.log("SET_PANELS",t.panels),we(t.panels);case"CONTAINER_RESIZED":{console.log("CONTAINER_RESIZED",t.containerSize);const n=Ze(e,t.containerSize);return t.containerSize>0&&De(n,t.containerSize)?we(n):n}case"COLLAPSE_PANEL":{console.log("COLLAPSE_PANEL",t.id);const n=e.findIndex(y=>y.id===t.id);if(n===-1)return e;const o=e[n];if(!o.collapsible||o.collapsed)return e;const i=o.size,s=o.measuredPixelSize??i,a={...o,collapsed:!0,sizeBeforeCollapse:i,measuredPixelSizeBeforeCollapse:s,size:0,percentageSize:0,measuredPixelSize:o.measuredPixelSize!==void 0?0:o.measuredPixelSize,measuredPercentageSize:o.measuredPercentageSize!==void 0?0:o.measuredPercentageSize},l=[...e];l[n]=a;const c=Ze(l,t.containerSize);return t.containerSize>0&&De(c,t.containerSize)?we(c):c}case"EXPAND_PANEL":{console.log("EXPAND_PANEL",t.id,t.targetSize);const n=e.findIndex(k=>k.id===t.id);if(n===-1)return e;const o=t.containerSize,i=e[n];if(!(i.collapsible&&i.collapsed))return e;const a=[t.targetSize,i.sizeBeforeCollapse,i.measuredPixelSizeBeforeCollapse,i.originalPixelSize].find(k=>k!==void 0)??0,l=ie(i.minSize,0,o),c=ie(i.maxSize,o,o),y=me(a,l,c),S=pe(y,o),f=i.measuredPixelSizeBeforeCollapse??y,d=pe(f,o),x={...i,collapsed:!1,size:y,percentageSize:S,sizeBeforeCollapse:y,measuredPixelSize:y,measuredPixelSizeBeforeCollapse:f,measuredPercentageSize:d},w=[...e];w[n]=x;const C=Ze(w,o);return o>0&&De(C,o)?we(C):C}default:return e}},xt=({direction:e,style:t,onLayout:n,autoSaveId:o,showDebugInfo:i=!1})=>{const[s,a]=m.useReducer(Qt,[]),[l,c]=m.useState({width:0,height:0}),[y,S]=m.useState(!1),[f,d]=m.useState(!1),[x,w]=m.useState(null),[C,k]=m.useState({}),[p,b]=m.useState({}),E=m.useRef(null),U=m.useRef(n),K=m.useRef(!1),W=m.useRef(0),B=m.useRef(l);m.useLayoutEffect(()=>{if(!E.current)return;const R=new ResizeObserver(r=>{for(const P of r){const _=P.target,N=_?be(_,"horizontal"):null,te=_?be(_,"vertical"):null,g=N?N.inner:0,z=te?te.inner:0,D=P.contentRect.width,h=P.contentRect.height,A=g>0?g:D,j=z>0?z:h;c(F=>(!y&&A>0&&j>0&&S(!0),F.width===A&&F.height===j?F:{width:A,height:j}))}});return R.observe(E.current),()=>R.disconnect()},[y]),m.useLayoutEffect(()=>{const R=B.current,r=l,P=e==="horizontal"?Math.abs(R.width-r.width)>0:Math.abs(R.height-r.height)>0;if(f&&P){const _=e==="horizontal"?r.width:r.height;a({type:"CONTAINER_RESIZED",containerSize:_,direction:e})}B.current=r},[l,f,e]);const M=m.useCallback(()=>{console.log("panels[0]?.id",s[0]?.id);const R=s.some(u=>{if(u.collapsed||u.sizeUnit!=="percentage")return!1;const Y=u.collapsible?u.sizeBeforeCollapse??u.measuredPixelSizeBeforeCollapse??u.originalPixelSize??u.measuredPixelSize??0:u.measuredPixelSize??u.originalPixelSize??u.size,ue=u.percentageSize!==void 0&&u.percentageSize>0;return u.size<=0&&(Y>0||ue)}),r=e==="horizontal"?l.width:l.height,P=r>0;if(x||!P||!(s.length>0&&(s.length!==W.current||!f||R)))return;const te=s.filter(u=>!u.collapsed&&(u.originalPixelSize!==void 0||u.sizeUnit==="pixels")).reduce((u,Y)=>Y.originalPixelSize!==void 0?u+Y.originalPixelSize:u+Y.size,0),g=s.filter(u=>u.sizeUnit==="percentage"&&!u.collapsed),z=g.map(u=>u.id),D=g.map(u=>u.percentageSize!==void 0&&u.percentageSize>0?Ie(u.percentageSize,r):u.size>0?u.size:0),h=D.reduce((u,Y)=>u+Y,0),A=r-te,j=Math.max(0,A),F=j>0,$=s.map(u=>{if(u.collapsed){const Y=u.sizeBeforeCollapse??u.measuredPixelSizeBeforeCollapse??u.originalPixelSize??(u.sizeUnit==="pixels"?u.size:void 0),ue=u.sizeUnit==="percentage"&&u.percentageSize!==void 0?Ie(u.percentageSize,r):void 0,ae=Y??ue??0,ce=u.measuredPixelSizeBeforeCollapse??u.measuredPixelSize??ae;return{...u,size:0,percentageSize:0,sizeBeforeCollapse:ae,measuredPixelSizeBeforeCollapse:ce}}if(u.sizeUnit==="pixels"||u.originalPixelSize!==void 0){const Y=u.size,ue=r>0?pe(Y,r):0,ae={...u,size:Y,percentageSize:ue};if(u.collapsible){const ce=u.sizeBeforeCollapse??Y,xe=u.measuredPixelSizeBeforeCollapse??u.measuredPixelSize??ce;ae.sizeBeforeCollapse=ce,ae.measuredPixelSizeBeforeCollapse=xe}return ae}if(u.sizeUnit==="percentage"){const Y=z.indexOf(u.id),ue=Y!==-1?D[Y]:0,ae=ie(u.minSize,0,r),ce=ie(u.maxSize,r,r),xe=Math.max(ae,u.sizeBeforeCollapse??0,u.measuredPixelSizeBeforeCollapse??0,u.measuredPixelSize??0,u.originalPixelSize??0,u.size>0?u.size:0,u.percentageSize!==void 0?Ie(u.percentageSize,r):0,1),ge=ue>0?ue:xe;let fe;if(!F)fe=ae;else if(Y!==-1&&h>0){const Se=ge/h,ve=j*Se;fe=me(ve,ae,ce)}else{const Se=u.percentageSize!==void 0?Ie(u.percentageSize,r):u.size,ve=Se>0?Se:ge;fe=me(ve,ae,ce)}const _e=r>0?pe(fe,r):0,he={...u,size:fe,percentageSize:_e};if(u.collapsible){const Se=u.sizeBeforeCollapse??fe,ve=u.measuredPixelSizeBeforeCollapse??u.measuredPixelSize??Se;he.sizeBeforeCollapse=Se,he.measuredPixelSizeBeforeCollapse=ve}return he}return u}),se=[];for(let u=0;u<$.length;u+=1){const Y=$[u];Y.sizeUnit==="percentage"&&!Y.collapsed&&se.push(u)}const q=se.reduce((u,Y)=>u+$[Y].size,0),re=A-q;Math.abs(re)>0&&Je($,re,r),a({type:"SET_PANELS",panels:$}),W.current=s.length,d(!0)},[s,e,l.width,l.height,f,x]);m.useEffect(()=>{const R=e==="horizontal"?l.width:l.height,r=R>0,P=r&&s.length>0,_=P?s.reduce((h,A)=>{if(A.collapsed)return h;const j=ie(A.minSize,0,R);return h+Math.max(0,j)},0):null,N=P?s.reduce((h,A)=>{if(A.collapsed)return h;const j=ie(A.maxSize,R,R);return h+Math.max(0,j)},0):null,te=_??x?.totalMinimumSize??null,g=N??x?.totalMaximumSize??null;if(!r){x&&w(h=>!h||h.availableContainerSize===R?h:{reason:h.reason,totalMinimumSize:null,totalMaximumSize:null,availableContainerSize:R});return}const z=te!==null&&te-R>Number.EPSILON,D=g!==null&&R-g>Number.EPSILON;if(z||D){const A={reason:z?"minimum-exceeded":"maximum-insufficient",totalMinimumSize:te,totalMaximumSize:g,availableContainerSize:R};w(j=>j&&j.reason===A.reason&&Math.abs((j.totalMinimumSize??0)-(A.totalMinimumSize??0))<=Number.EPSILON&&Math.abs((j.totalMaximumSize??0)-(A.totalMaximumSize??0))<=Number.EPSILON&&Math.abs(j.availableContainerSize-A.availableContainerSize)<=Number.EPSILON?j:A);return}if(x){const h=x.reason==="minimum-exceeded",A=x.reason==="maximum-insufficient";(!h||te!==null)&&(!A||g!==null)&&!z&&!D&&w(q=>q&&null)}},[s,e,l.width,l.height,x]),m.useEffect(()=>{M()},[M]),m.useEffect(()=>{U.current=n},[n]);const Q=m.useMemo(()=>s.map(R=>R.size),[s]);m.useLayoutEffect(()=>{Q.length>0&&U.current&&U.current(Q)},[Q]),m.useEffect(()=>{if(o&&Q.length>0){const R=setTimeout(()=>{mt(o,Q)},200);return()=>clearTimeout(R)}},[o,Q]),m.useEffect(()=>{if(!o||s.length===0||K.current)return;const R=e==="horizontal"?l.width:l.height;if(R<=0)return;const r=gt(o);if(r&&r.length===s.length){const P=s.map((_,N)=>{const te=ie(_.minSize,0,R),g=ie(_.maxSize,R,R),z=me(r[N],te,g),D=pe(z,R);return{..._,size:z,percentageSize:D}});a({type:"SET_PANELS",panels:P}),K.current=!0}},[o,s,l.width,l.height,e]);const H=m.useCallback(R=>{a({type:"REGISTER_PANEL",panel:R})},[]),J=m.useCallback(R=>{a({type:"UNREGISTER_PANEL",id:R}),k(r=>{if(!(R in r))return r;const P={...r};return delete P[R],P})},[]),ne=m.useCallback((R,r,P,_)=>{const N=e==="horizontal"?l.width:l.height,te=s.find(q=>q.id===R),g=s.find(q=>q.id===r);if(!(te&&g)){a({type:"RESIZE_PANELS",leftId:R,rightId:r,leftSize:P,rightSize:_,containerSize:N});return}if(te.collapsed||g.collapsed)return;const z=ie(te.minSize,0,N),D=ie(te.maxSize,N,N),h=ie(g.minSize,0,N),A=ie(g.maxSize,N,N);let j=me(P,z,D),F=me(_,h,A);const $=j+F,se=P+_;if($!==se){const q=se-$;if(q>0){const re=D-j,u=A-F,Y=re+u;if(Y>0){const ue=Math.min(q*(re/Y),re),ae=Math.min(q-ue,u);j+=ue,F+=ae}}else if(q<0){const re=Math.abs(q),u=j-z,Y=F-h,ue=u+Y;if(ue>0){const ae=Math.min(re*(u/ue),u),ce=Math.min(re-ae,Y);j-=ae,F-=ce}}}j=me(j,z,D),F=me(F,h,A),console.assert(j+F===se,"Total size after constraints should be close to the original total size.",{constrainedLeftSize:j,constrainedRightSize:F,originalTotalSize:se}),a({type:"RESIZE_PANELS",leftId:R,rightId:r,leftSize:j,rightSize:F,containerSize:N})},[e,l.width,l.height,s]),X=m.useCallback(R=>{const r=e==="horizontal"?l.width:l.height;a({type:"COLLAPSE_PANEL",id:R,containerSize:r})},[e,l.width,l.height]),ee=m.useCallback((R,r)=>{const P=e==="horizontal"?l.width:l.height;a({type:"EXPAND_PANEL",id:R,containerSize:P,targetSize:r})},[e,l.width,l.height]),V=m.useCallback(R=>s.find(r=>r.id===R),[s]),I=m.useCallback((R,r)=>{k(P=>{if(r===null){if(!(R in P))return P;const N={...P};return delete N[R],N}const _=P[R];return _&&_.pixelSize===r.pixelSize&&_.percentageSize===r.percentageSize?P:{...P,[R]:r}})},[]),G=m.useCallback((R,r)=>{b(P=>{if(r===null){if(!(R in P))return P;const N={...P};return delete N[R],N}const _=P[R];return _&&Math.abs(_.thickness-r.thickness)<=.25&&_.visible===r.visible&&_.direction===r.direction&&_.startPanelId===r.startPanelId&&_.endPanelId===r.endPanelId?P:{...P,[R]:r}})},[]),v=m.useMemo(()=>({direction:e,panels:s,containerSize:l,isContainerReady:y,showDebugInfo:i,registerPanel:H,unregisterPanel:J,resizePanels:ne,collapsePanel:X,expandPanel:ee,getPanel:V,reportPanelMeasurement:I,panelMeasurements:C,reportHandleMeasurement:G,handleMeasurements:p,layoutConstraintViolation:x}),[e,s,l,y,i,H,J,ne,X,ee,V,I,C,G,p,x]),oe=m.useMemo(()=>({display:"flex",flexDirection:e==="horizontal"?"row":"column",alignItems:"stretch",width:"100%",height:"100%",minWidth:"0px",minHeight:"0px",position:"relative",overflow:"hidden",...t}),[e,t]);return{groupRef:E,contextValue:v,groupStyle:oe}},Kt=e=>{const{getPanel:t,collapsePanel:n,expandPanel:o}=Be(),i=t(e),s=m.useCallback(()=>{n(e)},[n,e]),a=m.useCallback(c=>{o(e,c)},[o,e]),l=m.useCallback(()=>{i?.collapsed?a():s()},[i?.collapsed,s,a]);return m.useMemo(()=>({panel:i,isCollapsed:i?.collapsed??!1,collapse:s,expand:a,toggle:l}),[i,s,a,l])};var Ge={exports:{}},Ae={};/**
1
+ (function(ue,x){typeof exports=="object"&&typeof module<"u"?x(exports,require("react"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react","react-dom"],x):(ue=typeof globalThis<"u"?globalThis:ue||self,x(ue.AiquantsResizePanels={},ue.React,ue.ReactDOM))})(this,(function(ue,x,Kt){"use strict";const tt=x.createContext(null),Ye=()=>{const e=x.useContext(tt);if(!e)throw new Error("usePanelGroup must be used within a PanelGroup");return e},ut=(e,t=0)=>{if(!Number.isFinite(e))return e;const o=10**t,i=e*o,r=Math.floor(i),s=i-r,n=Number.EPSILON*Math.max(1,Math.abs(i));return s<.5-n?r/o:s>.5+n?(r+1)/o:(r%2===0?r:r+1)/o},ft=12,pt=8,qt=8,$t=8,mt=.05,gt=10,er=.05,tr=20,rr=.05,ht=0,xt=6,be=(e,t)=>t<=0?0:ut(e/t*100,xt),De=(e,t)=>!e||t<=0?0:e/100*t,Je=(e,t="percentage")=>{if(e!==void 0)return typeof e=="number"?{value:e,unit:t}:e},zt=(e,t)=>e?e.unit==="percentage"?e.value/100*t:e.value:0,se=(e,t,o)=>e?typeof e=="number"?e/100*o:e.unit==="pixels"?e.value:e.value/100*o:t,Se=(e,t,o)=>Math.min(Math.max(e,t),o),rt=e=>{if(!Number.isFinite(e)||e<=0)return ht;const t=e*mt,o=Math.min(ft,gt,t);return Math.max(ht,o)},St=(e,t,o,i={})=>{if(Math.abs(t)<=0)return t;const r=i.enforceAutoMinSize??!1,s=e.map((l,c)=>({panel:l,index:c})).filter(({panel:l})=>!l.collapsed&&(l.sizeUnit==="pixels"||l.originalPixelSize!==void 0));if(s.length===0)return t;const n=t>0,u=[...s].sort((l,c)=>{const d=l.panel.pixelAdjustPriority??l.index+1,S=c.panel.pixelAdjustPriority??c.index+1;return d===S?n?c.index-l.index:l.index-c.index:n?S-d:d-S});let a=t;const g=l=>{for(const{index:c}of u){if(Math.abs(a)<=0)break;const d=e[c];if(!d||d.collapsed)continue;const S=Je(d.minSize,"pixels"),P=Je(d.maxSize,"pixels"),y=S?zt(S,o):0,M=P?zt(P,o):o,v=r?se(d.autoMinSize,0,o):0,E=Math.max(y,v),C=d.preferredPixelSize!==void 0?Se(d.preferredPixelSize,E,M):d.size,D=d.collapseFromStart||d.collapseFromEnd;if(a>0){if(Math.abs(d.size)<=0&&(d.percentageSize??0)<=0)continue;const ee=Math.max(d.size,C),K=l?Math.min(M,ee):M,w=Math.max(0,K-d.size);if(w<=0)continue;const L=Math.min(w,a);if(L<=0)continue;const X=d.size+L,ne=be(X,o),W=D?X:d.sizeBeforeCollapse,V=D?d.measuredPixelSizeBeforeCollapse??d.measuredPixelSize??X:d.measuredPixelSizeBeforeCollapse;e[c]={...d,size:X,percentageSize:ne,sizeBeforeCollapse:W,measuredPixelSizeBeforeCollapse:V,measuredPixelSize:void 0,measuredPercentageSize:void 0},a-=L}else{const q=l?C:E,ee=Math.max(0,d.size-q);if(ee<=0)continue;const K=Math.min(ee,Math.abs(a));if(K<=0)continue;const w=d.size-K,L=be(w,o),X=D?w:d.sizeBeforeCollapse,ne=D?d.measuredPixelSizeBeforeCollapse??d.measuredPixelSize??w:d.measuredPixelSizeBeforeCollapse;e[c]={...d,size:w,percentageSize:L,sizeBeforeCollapse:X,measuredPixelSizeBeforeCollapse:ne,measuredPixelSize:void 0,measuredPercentageSize:void 0},a+=K}}};return g(!0),(n&&a>0||!n&&a<0)&&g(!1),a},Xe=e=>{if(!e)return 0;const t=parseFloat(e);return Number.isFinite(t)?t:0},ke=(e,t)=>{const o=e.getBoundingClientRect(),i=typeof window<"u"?window.getComputedStyle(e):null,r=i?Xe(i.borderLeftWidth)+Xe(i.borderRightWidth):0,s=i?Xe(i.borderTopWidth)+Xe(i.borderBottomWidth):0;if(t==="horizontal"){const g=o.width>0?o.width:e.offsetWidth,l=o.width>0?Math.max(0,o.width-r):e.clientWidth,c=e.offsetWidth>0?e.offsetWidth:e.clientWidth+r;return{inner:l>0?l:Math.max(0,e.clientWidth),outer:g>0?g:Math.max(0,c)}}const n=o.height>0?o.height:e.offsetHeight,u=o.height>0?Math.max(0,o.height-s):e.clientHeight,a=e.offsetHeight>0?e.offsetHeight:e.clientHeight+s;return{inner:u>0?u:Math.max(0,e.clientHeight),outer:n>0?n:Math.max(0,a)}};let bt=0,Pt=0;const yt=()=>typeof window>"u"?(bt+=1,`panel-server-${bt}`):`panel-${Date.now()}-${Math.random().toString(36).substr(2,5)}`,nr=()=>typeof window>"u"?(Pt+=1,`resize-handle-server-${Pt}`):`resize-handle-${Date.now()}-${Math.random().toString(36).substr(2,5)}`,vt=(e,t)=>{try{localStorage.setItem(`panel-layout-${e}`,JSON.stringify(t))}catch(o){console.warn("Failed to save panel layout:",o)}},wt=e=>{try{const t=localStorage.getItem(`panel-layout-${e}`);return t?JSON.parse(t):null}catch(t){return console.warn("Failed to load panel layout:",t),null}},Pe=e=>e.map(t=>({id:t.id,size:t.size,percentageSize:t.percentageSize,preferredPercentageSize:t.preferredPercentageSize,sizeBeforeCollapse:t.sizeBeforeCollapse,percentageSizeBeforeCollapse:t.percentageSizeBeforeCollapse,preferredPercentageSizeBeforeCollapse:t.preferredPercentageSizeBeforeCollapse,measuredPercentageSize:t.measuredPercentageSize,excludeFromAutoGrowth:t.excludeFromAutoGrowth??!1,collapsed:t.collapsed??!1,collapseFromStart:t.collapseFromStart,collapseFromEnd:t.collapseFromEnd,collapsedByDirection:t.collapsedByDirection??null})),Ze=e=>e?Pe([e])[0]:null,Ae=e=>e?!!(e.collapseFromStart||e.collapseFromEnd):!1,nt=(e,t)=>{if(!Number.isFinite(t)||t<=0)return e;const o=e.map(a=>({...a})),i=[];for(let a=0;a<o.length;a+=1){const g=o[a];if(g.collapsed){o[a]={...g,size:0,percentageSize:0};continue}const l=Math.max(0,se(g.minSize,0,t)),c=Math.max(0,se(g.autoMinSize,0,t)),d=Math.max(l,c),S=Math.max(.001,d),P=se(g.maxSize,t,t),y=Math.max(d,P),M=g.sizeUnit==="pixels"||g.originalPixelSize!==void 0,v=Math.max(0,g.size);let E=d;if(M){const D=g.preferredPixelSize??g.size??g.originalPixelSize??d;E=Se(D,d,y)}else{const D=g.preferredPercentageSize??g.percentageSize??be(g.size,t),q=De(D,t);E=Se(q,d,y)}const C=!M&&(g.excludeFromAutoGrowth??!1)&&v<=S;i.push({index:a,isPixelPanel:M,minSize:d,maxSize:y,preferredSize:E,priority:g.pixelAdjustPriority??a+1,flexPriority:M?void 0:g.flexAdjustPriority,excludeFromGrowth:C})}if(i.length===0)return o;const r=new Map;let s=0;for(const a of i)r.set(a.index,a.minSize),s+=a.minSize;let n=t-s;const u=(a,g)=>{if(g<=0)return 0;const l=r.get(a.index)??a.minSize,c=Math.max(0,a.maxSize-l);if(c<=0)return 0;const d=Math.min(g,c);return r.set(a.index,l+d),d};if(n>0){const a=l=>{for(;n>1e-6;){let d=0;const S=[];for(const M of l){if(!M.isPixelPanel&&M.excludeFromGrowth)continue;const v=r.get(M.index)??M.minSize,E=Math.min(M.preferredSize,M.maxSize),C=Math.max(0,E-v);C>1e-6&&(d+=C,S.push({descriptor:M,capacity:C}))}if(S.length===0||d<=1e-6)break;let P=0;const y=n;for(const M of S){if(n<=1e-6)break;if(!M.descriptor.isPixelPanel&&M.descriptor.excludeFromGrowth)continue;const v=y*M.capacity/d,E=Math.min(M.capacity,v);if(E<=0)continue;const C=u(M.descriptor,E);C>0&&(n-=C,P+=C)}if(P<=1e-6)break}},g=i.filter(l=>l.isPixelPanel);g.sort((l,c)=>c.priority-l.priority);for(const l of g){if(n<=0)break;const c=r.get(l.index)??l.minSize,d=Math.min(l.preferredSize,l.maxSize),S=Math.max(0,d-c);if(S<=0)continue;const P=u(l,Math.min(S,n));P>0&&(n-=P)}if(n>0){const l=i.filter(c=>!c.isPixelPanel);if(l.length>0){const c=l.filter(d=>d.flexPriority!==void 0&&!d.excludeFromGrowth);if(c.length>0){c.sort((d,S)=>(S.flexPriority??0)-(d.flexPriority??0));for(const d of c){if(n<=0)break;if(d.excludeFromGrowth)continue;const S=r.get(d.index)??d.minSize,P=Math.min(d.preferredSize,d.maxSize),y=Math.max(0,P-S);if(y<=0)continue;const M=u(d,Math.min(y,n));M>0&&(n-=M)}}if(n>0){const d=c.length>0?l.filter(S=>S.flexPriority===void 0&&!S.excludeFromGrowth):l.filter(S=>!S.excludeFromGrowth);d.length>0&&a(d)}}}}if(n>0){let a=n;for(;;){let g=0;const l=[];for(const d of i){if(!d.isPixelPanel&&d.excludeFromGrowth)continue;const S=r.get(d.index)??d.minSize,P=d.isPixelPanel?Math.min(d.maxSize,d.preferredSize):d.maxSize,y=Math.max(0,P-S);y>0&&(l.push(d),g+=y)}if(g<=0)break;const c=n;for(const d of l){if(n<=0)break;if(!d.isPixelPanel&&d.excludeFromGrowth)continue;const S=r.get(d.index)??d.minSize,P=d.isPixelPanel?Math.min(d.maxSize,d.preferredSize):d.maxSize,y=Math.max(0,P-S);if(y<=0)continue;const M=c*y/g,v=u(d,Math.min(y,M));v>0&&(n-=v)}if(n<=1e-6||Math.abs(a-n)<=1e-6)break;a=n}n=Math.max(0,n)}if(n<0){let a=n;const g=i.filter(l=>l.isPixelPanel);for(g.sort((l,c)=>l.priority-c.priority);!(n>=0);){let l=!1;for(const c of g){if(n>=0)break;const d=r.get(c.index)??c.minSize,S=Se(c.preferredSize,c.minSize,c.maxSize),P=Math.max(0,d-S);if(P>0&&n<0){const M=Math.min(P,Math.abs(n));r.set(c.index,d-M),n+=M,l=!0;continue}const y=Math.max(0,d-c.minSize);if(y>0&&n<0){const M=Math.min(y,Math.abs(n));r.set(c.index,d-M),n+=M,l=!0}}if(!l||Math.abs(a-n)<=1e-6)break;a=n}}for(const a of i){const g=r.get(a.index)??a.minSize,l=o[a.index],c=Ae(l),d=c?g:l.sizeBeforeCollapse,S=c?l.measuredPixelSizeBeforeCollapse??l.measuredPixelSize??g:l.measuredPixelSizeBeforeCollapse,P=t>0?be(g,t):0;o[a.index]={...l,size:g,percentageSize:P,preferredPercentageSize:l.preferredPercentageSize,preferredPixelSize:a.isPixelPanel?l.preferredPixelSize??g:l.preferredPixelSize,sizeBeforeCollapse:d,measuredPixelSizeBeforeCollapse:S,measuredPixelSize:void 0,measuredPercentageSize:void 0}}return _e(o)},_e=e=>{let t=0;for(const r of e)r.collapsed||(t+=Math.max(r.size,0));if(t<=0){let r=!1;const s=e.map(n=>(n.percentageSize??0)!==0?(r=!0,{...n,percentageSize:0,measuredPercentageSize:n.measuredPercentageSize!==void 0?0:n.measuredPercentageSize}):!n.collapsed&&n.sizeBeforeCollapse!==n.size?(r=!0,{...n,sizeBeforeCollapse:n.size}):n);return r?s:e}let o=!1;const i=e.map(r=>{if(r.collapsed)return(r.percentageSize??0)!==0?(o=!0,{...r,percentageSize:0,measuredPercentageSize:r.measuredPercentageSize!==void 0?0:r.measuredPercentageSize}):r;const s=be(r.size,t),n=r.measuredPercentageSize,g=(n!==void 0?Math.abs(n-s):1/0)<1e-4&&n!==void 0?n:s,l=ut(g,xt),d=Math.abs((r.percentageSize??0)-l)>0||r.percentageSize===void 0,S=r.sizeBeforeCollapse===void 0||r.sizeBeforeCollapse!==r.size,P=Ae(r),y=P&&S,M=r.measuredPixelSize??r.size,v=P&&(r.measuredPixelSizeBeforeCollapse===void 0||r.measuredPixelSizeBeforeCollapse!==M);if(!(d||y||v))return r;o=!0;const E=y?r.size:r.sizeBeforeCollapse,C=v?M:r.measuredPixelSizeBeforeCollapse;return{...r,percentageSize:l,sizeBeforeCollapse:E,measuredPixelSizeBeforeCollapse:C,collapsedByDirection:r.collapsed?r.collapsedByDirection??null:null}});return o?i:e},Qe=(e,t)=>{if(t<=0)return!1;const o=[];let i=0;for(let l=0;l<e.length;l+=1){const c=e[l];!c||c.collapsed||(o.push(l),i+=c.size)}if(o.length===0)return!1;let r=t-i;if(Math.abs(r)<=0)return!1;let s=!1;const n=l=>{const c=e[l],d=se(c.minSize,0,t),S=se(c.autoMinSize,0,t),P=Math.max(d,S),y=se(c.maxSize,t,t),M=c.sizeUnit==="percentage"&&c.originalPixelSize===void 0;return{index:l,minSize:P,maxSize:y,isFlexible:M}},u=(l,c)=>{if(!Number.isFinite(c)||Math.abs(c)<=0)return;const d=e[l];if(!d)return;const S=Math.max(0,d.size+c);if(Math.abs(S-d.size)<=0)return;const P=be(S,t),y=Ae(d),M=y?S:d.sizeBeforeCollapse,v=y?d.measuredPixelSizeBeforeCollapse??d.measuredPixelSize??S:d.measuredPixelSizeBeforeCollapse;e[l]={...d,size:S,percentageSize:P,sizeBeforeCollapse:M,measuredPixelSizeBeforeCollapse:v,measuredPixelSize:void 0,measuredPercentageSize:void 0},r-=c,s=!0},a=l=>{for(const c of l){if(Math.abs(r)<=0)break;const d=e[c.index];if(!d||d.collapsed)continue;const S=d.size;if(r>0){const P=Math.max(0,c.maxSize-S);if(P<=0)continue;const y=Math.min(P,r);if(y<=0)continue;u(c.index,y)}else{const P=Math.max(0,S-c.minSize);if(P<=0)continue;const y=Math.min(P,Math.abs(r));if(y<=0)continue;u(c.index,-y)}}},g=o.map(l=>n(l)).filter(l=>l.isFlexible);if(g.length>0&&a(g),Math.abs(r)>0){const l=r;r=St(e,r,t,{enforceAutoMinSize:!0}),Math.abs(r-l)>0&&(s=!0)}return s},Ct=(e,t,o)=>{if(!(e.sizeUnit==="pixels"||e.originalPixelSize!==void 0)||e.pixelAdjustPriority!==void 0)return e;const r=t.filter((n,u)=>u!==o&&(n.sizeUnit==="pixels"||n.originalPixelSize!==void 0)).map(n=>n.pixelAdjustPriority).filter(n=>n!==void 0),s=r.length>0?Math.max(...r)+1:1;return{...e,pixelAdjustPriority:s}},or=(e,t)=>{switch(t.type){case"REGISTER_PANEL":{console.log("REGISTER_PANEL",t.panel);const o=e.findIndex(s=>s.id===t.panel.id);if(o>=0){const s=[...e],n=e[o],u={...n,minSize:t.panel.minSize,maxSize:t.panel.maxSize,collapseFromStart:t.panel.collapseFromStart,collapseFromEnd:t.panel.collapseFromEnd,collapsedByDirection:t.panel.collapsedByDirection!==void 0?t.panel.collapsedByDirection:n.collapsedByDirection,sizeUnit:t.panel.sizeUnit,originalPixelSize:t.panel.originalPixelSize,preferredPercentageSize:t.panel.preferredPercentageSize!==void 0?t.panel.preferredPercentageSize:n.preferredPercentageSize,preferredPercentageSizeBeforeCollapse:t.panel.preferredPercentageSizeBeforeCollapse!==void 0?t.panel.preferredPercentageSizeBeforeCollapse:n.preferredPercentageSizeBeforeCollapse,percentageSizeBeforeCollapse:t.panel.percentageSizeBeforeCollapse!==void 0?t.panel.percentageSizeBeforeCollapse:n.percentageSizeBeforeCollapse,pixelAdjustPriority:t.panel.pixelAdjustPriority!==void 0?t.panel.pixelAdjustPriority:n.pixelAdjustPriority,autoMinSize:t.panel.autoMinSize!==void 0?t.panel.autoMinSize:n.autoMinSize,excludeFromAutoGrowth:t.panel.excludeFromAutoGrowth!==void 0?t.panel.excludeFromAutoGrowth:n.excludeFromAutoGrowth},a=Ct(u,e,o);return console.log("[resize-panels] register panel (update)",{panelId:a.id,incoming:Ze(t.panel),previous:Ze(n),next:Ze(a)}),s[o]=a,s}const i={...t.panel},r=Ct(i,e);return console.log("[resize-panels] register panel (insert)",{panelId:r.id,incoming:Ze(r),previousLength:e.length}),[...e,r]}case"UNREGISTER_PANEL":{console.log("UNREGISTER_PANEL",t.id);const o=e.filter(r=>r.id!==t.id),i=_e(o);return console.log("[resize-panels] unregister panel",{panelId:t.id,previous:Pe(e),filtered:Pe(o),next:Pe(i)}),i}case"RESIZE_PANELS":{console.log("RESIZE_PANELS",t.leftId,t.rightId,t.leftSize,t.rightSize);const o=e.findIndex(z=>z.id===t.leftId),i=e.findIndex(z=>z.id===t.rightId);if(o===-1||i===-1)return e;const r=[...e],s=r[o],n=r[i];if(s.collapsed||n.collapsed||t.leftSize===s.size&&t.rightSize===n.size)return e;const u=t.containerSize??e.reduce((z,h)=>z+h.size,0),a=se(s.minSize,0,u),g=se(s.maxSize,u,u),l=se(n.minSize,0,u),c=se(n.maxSize,u,u),d=s.size+n.size,S=e.reduce((z,h)=>h.collapsed?z:z+h.size,0),P=S-d,y=a+l,M=g+c,v=Se(t.leftSize+t.rightSize,y,M);let E=u>0?u-P:v;Number.isFinite(E)||(E=v);const C=Se(Math.max(v,E),y,M),D=z=>({min:Math.max(a,z-c),max:Math.min(g,z-l)}),q=z=>({min:Math.max(l,z-g),max:Math.min(c,z-a)}),ee=Math.abs(t.leftSize-s.size),K=Math.abs(t.rightSize-n.size),w=ee>=K;let L=s.size,X=n.size;if(w){const z=D(C);if(z.min>z.max)return e;const h=Se(t.leftSize,z.min,z.max),b=C-h;if(b<l||b>c)return e;L=h,X=b}else{const z=q(C);if(z.min>z.max)return e;const h=Se(t.rightSize,z.min,z.max),b=C-h;if(b<a||b>g)return e;X=h,L=b}const ne=L+X;if(C!==ne)return e;const W=S-s.size-n.size+ne,V=u>0?u:W,ae=V>0?be(L,V):0,k=V>0?be(X,V):0,T=s.sizeUnit==="pixels"||s.originalPixelSize!==void 0?L:s.preferredPixelSize,J=n.sizeUnit==="pixels"||n.originalPixelSize!==void 0?X:n.preferredPixelSize,R=se(s.autoMinSize,0,u),me=se(n.autoMinSize,0,u),ze=Math.max(.001,R),p=Math.max(.001,me),B=s.sizeUnit==="percentage"&&s.originalPixelSize===void 0,O=n.sizeUnit==="percentage"&&n.originalPixelSize===void 0;let H=s.excludeFromAutoGrowth,fe=n.excludeFromAutoGrowth;B&&(L<=ze?H=!0:L>ze&&(H=!1)),O&&(X<=p?fe=!0:X>p&&(fe=!1));const ge=Ae(s),f=Ae(n);return r[o]={...s,size:L,percentageSize:ae,preferredPercentageSize:ae>0?ae:s.preferredPercentageSize,preferredPixelSize:T,sizeBeforeCollapse:ge?L:s.sizeBeforeCollapse,measuredPixelSize:void 0,measuredPercentageSize:void 0,excludeFromAutoGrowth:H},r[i]={...n,size:X,percentageSize:k,preferredPercentageSize:k>0?k:n.preferredPercentageSize,preferredPixelSize:J,sizeBeforeCollapse:f?X:n.sizeBeforeCollapse,measuredPixelSize:void 0,measuredPercentageSize:void 0,excludeFromAutoGrowth:fe},u>0&&Qe(r,u)?_e(r):r}case"SET_PANELS":{console.log("SET_PANELS",t.panels);const o=t.panels.map(a=>{const g=a.sizeUnit==="pixels"||a.originalPixelSize!==void 0,l=a.preferredPercentageSize!==void 0?a.preferredPercentageSize:a.percentageSize,c=a.preferredPixelSize!==void 0?a.preferredPixelSize:g?a.size:a.preferredPixelSize;return{...a,preferredPercentageSize:l,preferredPixelSize:c}}),i=Pe(e),r=Pe(o),s=_e(o),n=Pe(s);let u=i.length===n.length;if(u)for(let a=0;a<n.length;a+=1){const g=n[a],l=i[a];if(!l){u=!1;break}if(!(l.id===g.id&&l.size===g.size&&l.percentageSize===g.percentageSize&&l.sizeBeforeCollapse===g.sizeBeforeCollapse&&l.measuredPercentageSize===g.measuredPercentageSize&&l.collapsed===g.collapsed)){u=!1;break}}return u?(console.log("[resize-panels] set panels skipped (no diff)",{previous:i,incoming:r,next:n,previousLength:i.length,incomingLength:r.length}),e):(console.log("[resize-panels] set panels",{previous:i,incoming:r,next:n,previousLength:i.length,incomingLength:r.length}),s)}case"CONTAINER_RESIZED":{if(console.log("CONTAINER_RESIZED",t.containerSize),t.containerSize<=0)return console.log("[resize-panels] container resized skipped (non-positive size)",{containerSize:t.containerSize,panels:Pe(e)}),e;console.log("[resize-panels] container resized (before)",{containerSize:t.containerSize,panels:Pe(e)});const o=nt(e,t.containerSize);if(console.log("[resize-panels] container resized (after recalc)",{containerSize:t.containerSize,panels:Pe(o)}),t.containerSize>0&&Qe(o,t.containerSize)){const i=_e(o);return console.log("[resize-panels] container resized (after reconcile)",{containerSize:t.containerSize,panels:Pe(i)}),i}return console.log("[resize-panels] container resized (final)",{containerSize:t.containerSize,panels:Pe(o)}),o}case"COLLAPSE_PANEL":{console.log("COLLAPSE_PANEL",t.id);const o=e.findIndex(d=>d.id===t.id);if(o===-1)return e;const i=e[o],r=t.from==="start"?i.collapseFromStart:i.collapseFromEnd;if(!(Ae(i)&&r)||i.collapsed)return e;const n=i.size,u=i.measuredPixelSize??n,a=i.percentageSize??i.preferredPercentageSize??0,g={...i,collapsed:!0,collapsedByDirection:t.from,sizeBeforeCollapse:n,percentageSizeBeforeCollapse:a,preferredPercentageSizeBeforeCollapse:i.preferredPercentageSize??a,preferredPixelSizeBeforeCollapse:i.preferredPixelSize??n,measuredPixelSizeBeforeCollapse:u,size:0,percentageSize:0,preferredPercentageSize:i.preferredPercentageSize,measuredPixelSize:i.measuredPixelSize!==void 0?0:i.measuredPixelSize,measuredPercentageSize:i.measuredPercentageSize!==void 0?0:i.measuredPercentageSize},l=[...e];l[o]=g;const c=nt(l,t.containerSize);return t.containerSize>0&&Qe(c,t.containerSize)?_e(c):c}case"EXPAND_PANEL":{console.log("EXPAND_PANEL",t.id,t.targetSize);const o=e.findIndex(C=>C.id===t.id);if(o===-1)return e;const i=t.containerSize,r=e[o],s=t.from==="start"?r.collapseFromStart:r.collapseFromEnd;if(!(Ae(r)&&s)||!r.collapsed||r.collapsedByDirection&&r.collapsedByDirection!==t.from)return e;const u=[t.targetSize,r.sizeBeforeCollapse,r.measuredPixelSizeBeforeCollapse,r.preferredPixelSizeBeforeCollapse,r.originalPixelSize].find(C=>C!==void 0)??0,a=se(r.minSize,0,i),g=se(r.maxSize,i,i),l=Se(u,a,g),c=be(l,i),d=r.measuredPixelSizeBeforeCollapse??l,S=be(d,i),P=r.preferredPercentageSizeBeforeCollapse??r.percentageSizeBeforeCollapse??c,y=r.preferredPixelSizeBeforeCollapse??r.preferredPixelSize??l,M={...r,collapsed:!1,collapsedByDirection:null,size:l,percentageSize:c,preferredPercentageSize:P,preferredPixelSize:y,sizeBeforeCollapse:l,percentageSizeBeforeCollapse:void 0,preferredPercentageSizeBeforeCollapse:void 0,preferredPixelSizeBeforeCollapse:void 0,measuredPixelSize:l,measuredPixelSizeBeforeCollapse:d,measuredPercentageSize:S},v=[...e];v[o]=M;const E=nt(v,i);return i>0&&Qe(E,i)?_e(E):E}default:return e}},Et=({direction:e,style:t,onLayout:o,autoSaveId:i,showDebugInfo:r=!1})=>{const[s,n]=x.useReducer(or,[]),[u,a]=x.useState({width:0,height:0}),[g,l]=x.useState(!1),[c,d]=x.useState(!1),[S,P]=x.useState(null),[y,M]=x.useState({}),[v,E]=x.useState({}),C=x.useRef(null),D=x.useRef(o),q=x.useRef(!1),ee=x.useRef(0),K=x.useRef(u),w=x.useRef(u),L=x.useRef(g),X=x.useRef(S?.reason??null),ne=x.useRef({}),W=x.useRef(null),V=x.useRef(null),ae=x.useCallback(f=>f.map(z=>({...z})),[]);x.useEffect(()=>{w.current=u},[u]),x.useEffect(()=>{L.current=g},[g]),x.useEffect(()=>{X.current=S?.reason??null},[S?.reason]),x.useEffect(()=>{if(S)return;const f=e==="horizontal"?u.width:u.height;!Number.isFinite(f)||f<=4||s.length!==0&&(W.current=ae(s))},[S,s,e,u.width,u.height,ae]),x.useEffect(()=>{const f=V.current;if(S){V.current=S;return}if(f&&!S&&W.current){V.current=null;const z=ae(W.current);n({type:"SET_PANELS",panels:z});return}V.current=S},[S,ae]),x.useLayoutEffect(()=>{if(!C.current)return;const f=new ResizeObserver(z=>{for(const h of z){const b=h.target,N=b?ke(b,"horizontal"):null,Y=b?ke(b,"vertical"):null,re=N?N.inner:0,U=Y?Y.inner:0,$=h.contentRect.width,Z=h.contentRect.height,j=re>0?re:$,F=U>0?U:Z;a(oe=>(!g&&j>0&&F>0&&l(!0),oe.width===j&&oe.height===F?oe:{width:j,height:F}))}});return f.observe(C.current),()=>f.disconnect()},[g]),x.useLayoutEffect(()=>{const f=K.current,z=u,h=e==="horizontal"?Math.abs(f.width-z.width)>0:Math.abs(f.height-z.height)>0;if(c&&h){const b=e==="horizontal"?z.width:z.height;n({type:"CONTAINER_RESIZED",containerSize:b,direction:e})}K.current=z},[u,c,e]);const k=x.useCallback(()=>{console.log("panels[0]?.id",s[0]?.id);const f=s.some(m=>{if(m.collapsed||m.sizeUnit!=="percentage")return!1;const ie=m.collapseFromStart||m.collapseFromEnd?m.sizeBeforeCollapse??m.measuredPixelSizeBeforeCollapse??m.originalPixelSize??m.measuredPixelSize??0:m.measuredPixelSize??m.originalPixelSize??m.size,te=m.percentageSize!==void 0&&m.percentageSize>0;return m.size<=0&&(ie>0||te)}),z=e==="horizontal"?u.width:u.height,h=z>0;if(S||!h||!(s.length>0&&(s.length!==ee.current||!c||f)))return;const Y=s.filter(m=>!m.collapsed&&(m.originalPixelSize!==void 0||m.sizeUnit==="pixels")).reduce((m,G)=>{const ie=G.preferredPixelSize??G.originalPixelSize??G.size;return m+Math.max(0,ie??0)},0),re=s.filter(m=>m.sizeUnit==="percentage"&&!m.collapsed),U=re.map(m=>m.id),$=re.map(m=>{const G=m.preferredPercentageSize??m.percentageSize;return G!==void 0&&G>0?De(G,z):m.size>0?m.size:0}),Z=$.reduce((m,G)=>m+G,0),j=z-Y,F=Math.max(0,j),oe=F>0,pe=s.map(m=>{if(m.collapsed){const G=m.sizeBeforeCollapse??m.measuredPixelSizeBeforeCollapse??m.originalPixelSize??(m.sizeUnit==="pixels"?m.size:void 0),ie=m.sizeUnit==="percentage"&&m.percentageSize!==void 0?De(m.percentageSize,z):void 0,te=G??ie??0,he=m.measuredPixelSizeBeforeCollapse??m.measuredPixelSize??te;return{...m,size:0,percentageSize:0,preferredPercentageSize:m.preferredPercentageSize,sizeBeforeCollapse:te,percentageSizeBeforeCollapse:m.percentageSizeBeforeCollapse??m.percentageSize??m.preferredPercentageSize??0,preferredPercentageSizeBeforeCollapse:m.preferredPercentageSizeBeforeCollapse??m.preferredPercentageSize??m.percentageSize??void 0,preferredPixelSizeBeforeCollapse:m.preferredPixelSizeBeforeCollapse??m.preferredPixelSize??te,measuredPixelSizeBeforeCollapse:he}}if(m.sizeUnit==="pixels"||m.originalPixelSize!==void 0){const G=m.size,ie=z>0?be(G,z):0,te={...m,size:G,percentageSize:ie,preferredPixelSize:m.preferredPixelSize??m.originalPixelSize??G,preferredPercentageSize:m.preferredPercentageSize!==void 0?m.preferredPercentageSize:ie>0?ie:void 0};if(m.collapseFromStart||m.collapseFromEnd){const he=m.sizeBeforeCollapse??G,we=m.measuredPixelSizeBeforeCollapse??m.measuredPixelSize??he;te.sizeBeforeCollapse=he,te.measuredPixelSizeBeforeCollapse=we,te.preferredPixelSizeBeforeCollapse=m.preferredPixelSizeBeforeCollapse??m.preferredPixelSize??he}return te}if(m.sizeUnit==="percentage"){const G=U.indexOf(m.id),ie=G!==-1?$[G]:0,te=se(m.minSize,0,z),he=se(m.maxSize,z,z),we=Math.max(te,m.sizeBeforeCollapse??0,m.measuredPixelSizeBeforeCollapse??0,m.measuredPixelSize??0,m.originalPixelSize??0,m.size>0?m.size:0,m.percentageSize!==void 0?De(m.percentageSize,z):0,1),Re=ie>0?ie:we;let ye;if(!oe)ye=te;else if(G!==-1&&Z>0){const Ce=Re/Z,Ne=F*Ce;ye=Se(Ne,te,he)}else{const Ce=m.percentageSize!==void 0?De(m.percentageSize,z):m.size,Ne=Ce>0?Ce:Re;ye=Se(Ne,te,he)}const Be=z>0?be(ye,z):0,Te={...m,size:ye,percentageSize:Be,preferredPercentageSize:m.preferredPercentageSize!==void 0?m.preferredPercentageSize:Be>0?Be:void 0};if(m.collapseFromStart||m.collapseFromEnd){const Ce=m.sizeBeforeCollapse??ye,Ne=m.measuredPixelSizeBeforeCollapse??m.measuredPixelSize??Ce;Te.sizeBeforeCollapse=Ce,Te.measuredPixelSizeBeforeCollapse=Ne,Te.preferredPixelSizeBeforeCollapse=m.preferredPixelSizeBeforeCollapse??m.preferredPixelSize??Ce}return Te}return m}),le=[];for(let m=0;m<pe.length;m+=1){const G=pe[m];G.sizeUnit==="percentage"&&!G.collapsed&&le.push(m)}const ce=le.reduce((m,G)=>m+pe[G].size,0),de=j-ce;Math.abs(de)>0&&St(pe,de,z,{enforceAutoMinSize:!0}),n({type:"SET_PANELS",panels:pe}),ee.current=s.length,d(!0)},[s,e,u.width,u.height,c,S]);x.useEffect(()=>{const f=e==="horizontal"?u.width:u.height,z=f>0,h=z&&s.length>0,b=h?s.reduce((Z,j)=>{if(j.collapsed)return Z;const F=se(j.minSize,0,f);return Z+Math.max(0,F)},0):null,N=h?s.reduce((Z,j)=>{if(j.collapsed)return Z;const F=se(j.maxSize,f,f);return Z+Math.max(0,F)},0):null,Y=b??S?.totalMinimumSize??null,re=N??S?.totalMaximumSize??null;if(!z){S&&P(Z=>!Z||Z.availableContainerSize===f?Z:{reason:Z.reason,totalMinimumSize:null,totalMaximumSize:null,availableContainerSize:f});return}const U=Y!==null&&Y-f>Number.EPSILON,$=re!==null&&f-re>Number.EPSILON;if(U||$){const j={reason:U?"minimum-exceeded":"maximum-insufficient",totalMinimumSize:Y,totalMaximumSize:re,availableContainerSize:f};P(F=>F&&F.reason===j.reason&&Math.abs((F.totalMinimumSize??0)-(j.totalMinimumSize??0))<=Number.EPSILON&&Math.abs((F.totalMaximumSize??0)-(j.totalMaximumSize??0))<=Number.EPSILON&&Math.abs(F.availableContainerSize-j.availableContainerSize)<=Number.EPSILON?F:j);return}if(S){const Z=S.reason==="minimum-exceeded",j=S.reason==="maximum-insufficient";(!Z||Y!==null)&&(!j||re!==null)&&!U&&!$&&P(ce=>ce&&null)}},[s,e,u.width,u.height,S]),x.useEffect(()=>{k()},[k]),x.useEffect(()=>{D.current=o},[o]);const T=x.useMemo(()=>s.map(f=>f.size),[s]);x.useLayoutEffect(()=>{T.length>0&&D.current&&D.current(T)},[T]),x.useEffect(()=>{if(i&&T.length>0){const f=setTimeout(()=>{vt(i,T)},200);return()=>clearTimeout(f)}},[i,T]),x.useEffect(()=>{if(!i||s.length===0||q.current)return;const f=e==="horizontal"?u.width:u.height;if(f<=0)return;const z=wt(i);if(z&&z.length===s.length){const h=s.map((b,N)=>{const Y=se(b.minSize,0,f),re=se(b.maxSize,f,f),U=Se(z[N],Y,re),$=be(U,f),Z=b.sizeUnit==="pixels"||b.originalPixelSize!==void 0?U:b.preferredPixelSize;return{...b,size:U,percentageSize:$,preferredPercentageSize:$>0?$:b.preferredPercentageSize,preferredPixelSize:Z}});n({type:"SET_PANELS",panels:h}),q.current=!0}},[i,s,u.width,u.height,e]);const J=x.useCallback(f=>{const z=w.current,h=ne.current,b=JSON.stringify({id:f.id,size:f.size??null,percentageSize:f.percentageSize??null,preferredPercentageSize:f.preferredPercentageSize??null,preferredPixelSize:f.preferredPixelSize??null,sizeUnit:f.sizeUnit,originalPixelSize:f.originalPixelSize??null,minSize:f.minSize??null,maxSize:f.maxSize??null,collapseFromStart:f.collapseFromStart,collapseFromEnd:f.collapseFromEnd,collapsed:f.collapsed??!1,collapsedByDirection:f.collapsedByDirection??null,sizeBeforeCollapse:f.sizeBeforeCollapse??null,percentageSizeBeforeCollapse:f.percentageSizeBeforeCollapse??null,preferredPercentageSizeBeforeCollapse:f.preferredPercentageSizeBeforeCollapse??null,preferredPixelSizeBeforeCollapse:f.preferredPixelSizeBeforeCollapse??null,pixelAdjustPriority:f.pixelAdjustPriority??null});if(h[f.id]===b){console.log("[resize-panels] useResizablePanels.registerPanel skipped",{panelId:f.id,reason:"duplicate-registration"});return}h[f.id]=b,console.log("[resize-panels] useResizablePanels.registerPanel",{panelId:f.id,containerReady:L.current,violationReason:X.current,containerSize:{width:z.width,height:z.height}}),n({type:"REGISTER_PANEL",panel:f})},[]),R=x.useCallback(f=>{const z=w.current;console.log("[resize-panels] useResizablePanels.unregisterPanel",{panelId:f,containerReady:L.current,violationReason:X.current,containerSize:{width:z.width,height:z.height}}),n({type:"UNREGISTER_PANEL",id:f}),delete ne.current[f],M(h=>{if(!(f in h))return h;const b={...h};return delete b[f],b})},[]),me=x.useCallback((f,z,h,b)=>{const N=e==="horizontal"?u.width:u.height,Y=s.find(ce=>ce.id===f),re=s.find(ce=>ce.id===z);if(!(Y&&re)){n({type:"RESIZE_PANELS",leftId:f,rightId:z,leftSize:h,rightSize:b,containerSize:N});return}if(Y.collapsed||re.collapsed)return;const U=se(Y.minSize,0,N),$=se(Y.maxSize,N,N),Z=se(re.minSize,0,N),j=se(re.maxSize,N,N);let F=Se(h,U,$),oe=Se(b,Z,j);const pe=F+oe,le=h+b;if(pe!==le){const ce=le-pe;if(ce>0){const de=$-F,m=j-oe,G=de+m;if(G>0){const ie=Math.min(ce*(de/G),de),te=Math.min(ce-ie,m);F+=ie,oe+=te}}else if(ce<0){const de=Math.abs(ce),m=F-U,G=oe-Z,ie=m+G;if(ie>0){const te=Math.min(de*(m/ie),m),he=Math.min(de-te,G);F-=te,oe-=he}}}F=Se(F,U,$),oe=Se(oe,Z,j),console.assert(F+oe===le,"Total size after constraints should be close to the original total size.",{constrainedLeftSize:F,constrainedRightSize:oe,originalTotalSize:le}),n({type:"RESIZE_PANELS",leftId:f,rightId:z,leftSize:F,rightSize:oe,containerSize:N})},[e,u.width,u.height,s]),ze=x.useCallback((f,z)=>{const h=e==="horizontal"?u.width:u.height;n({type:"COLLAPSE_PANEL",id:f,from:z,containerSize:h})},[e,u.width,u.height]),p=x.useCallback((f,z,h)=>{const b=e==="horizontal"?u.width:u.height;n({type:"EXPAND_PANEL",id:f,from:z,containerSize:b,targetSize:h})},[e,u.width,u.height]),B=x.useCallback(f=>s.find(z=>z.id===f),[s]),O=x.useCallback((f,z)=>{M(h=>{if(z===null){if(!(f in h))return h;const N={...h};return delete N[f],N}const b=h[f];return b&&b.pixelSize===z.pixelSize&&b.percentageSize===z.percentageSize?h:{...h,[f]:z}})},[]),H=x.useCallback((f,z)=>{E(h=>{if(z===null){if(!(f in h))return h;const N={...h};return delete N[f],N}const b=h[f];return b&&Math.abs(b.thickness-z.thickness)<=.25&&b.visible===z.visible&&b.direction===z.direction&&b.startPanelId===z.startPanelId&&b.endPanelId===z.endPanelId?h:{...h,[f]:z}})},[]),fe=x.useMemo(()=>({direction:e,panels:s,containerSize:u,isContainerReady:g,showDebugInfo:r,registerPanel:J,unregisterPanel:R,resizePanels:me,collapsePanel:ze,expandPanel:p,getPanel:B,reportPanelMeasurement:O,panelMeasurements:y,reportHandleMeasurement:H,handleMeasurements:v,layoutConstraintViolation:S}),[e,s,u,g,r,J,R,me,ze,p,B,O,y,H,v,S]),ge=x.useMemo(()=>({display:"flex",flexDirection:e==="horizontal"?"row":"column",alignItems:"stretch",width:"100%",height:"100%",minWidth:"0px",minHeight:"0px",position:"relative",overflow:"hidden",...t}),[e,t]);return{groupRef:C,contextValue:fe,groupStyle:ge}},ir=e=>{const{getPanel:t,collapsePanel:o,expandPanel:i}=Ye(),r=t(e),s=x.useCallback(a=>{o(e,a)},[o,e]),n=x.useCallback((a,g)=>{i(e,a,g)},[i,e]),u=x.useCallback((a,g)=>{r?.collapsed?n(a,g):s(a)},[r?.collapsed,s,n]);return x.useMemo(()=>({panel:r,isCollapsed:r?.collapsed??!1,canCollapseFromStart:r?.collapseFromStart??!1,canCollapseFromEnd:r?.collapseFromEnd??!1,collapse:s,expand:n,toggle:u}),[r,s,n,u])};var Ke={exports:{}},Ge={};/**
2
2
  * @license React
3
3
  * react-jsx-runtime.production.js
4
4
  *
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var bt;function qt(){if(bt)return Ae;bt=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(o,i,s){var a=null;if(s!==void 0&&(a=""+s),i.key!==void 0&&(a=""+i.key),"key"in i){s={};for(var l in i)l!=="key"&&(s[l]=i[l])}else s=i;return i=s.ref,{$$typeof:e,type:o,key:a,ref:i!==void 0?i:null,props:s}}return Ae.Fragment=t,Ae.jsx=n,Ae.jsxs=n,Ae}var Ne={};/**
9
+ */var kt;function sr(){if(kt)return Ge;kt=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function o(i,r,s){var n=null;if(s!==void 0&&(n=""+s),r.key!==void 0&&(n=""+r.key),"key"in r){s={};for(var u in r)u!=="key"&&(s[u]=r[u])}else s=r;return r=s.ref,{$$typeof:e,type:i,key:n,ref:r!==void 0?r:null,props:s}}return Ge.Fragment=t,Ge.jsx=o,Ge.jsxs=o,Ge}var He={};/**
10
10
  * @license React
11
11
  * react-jsx-runtime.development.js
12
12
  *
@@ -14,10 +14,10 @@
14
14
  *
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
- */var zt;function $t(){return zt||(zt=1,process.env.NODE_ENV!=="production"&&(function(){function e(r){if(r==null)return null;if(typeof r=="function")return r.$$typeof===J?null:r.displayName||r.name||null;if(typeof r=="string")return r;switch(r){case k:return"Fragment";case b:return"Profiler";case p:return"StrictMode";case W:return"Suspense";case B:return"SuspenseList";case H:return"Activity"}if(typeof r=="object")switch(typeof r.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),r.$$typeof){case C:return"Portal";case U:return r.displayName||"Context";case E:return(r._context.displayName||"Context")+".Consumer";case K:var P=r.render;return r=r.displayName,r||(r=P.displayName||P.name||"",r=r!==""?"ForwardRef("+r+")":"ForwardRef"),r;case M:return P=r.displayName||null,P!==null?P:e(r.type)||"Memo";case Q:P=r._payload,r=r._init;try{return e(r(P))}catch{}}return null}function t(r){return""+r}function n(r){try{t(r);var P=!1}catch{P=!0}if(P){P=console;var _=P.error,N=typeof Symbol=="function"&&Symbol.toStringTag&&r[Symbol.toStringTag]||r.constructor.name||"Object";return _.call(P,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",N),t(r)}}function o(r){if(r===k)return"<>";if(typeof r=="object"&&r!==null&&r.$$typeof===Q)return"<...>";try{var P=e(r);return P?"<"+P+">":"<...>"}catch{return"<...>"}}function i(){var r=ne.A;return r===null?null:r.getOwner()}function s(){return Error("react-stack-top-frame")}function a(r){if(X.call(r,"key")){var P=Object.getOwnPropertyDescriptor(r,"key").get;if(P&&P.isReactWarning)return!1}return r.key!==void 0}function l(r,P){function _(){I||(I=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",P))}_.isReactWarning=!0,Object.defineProperty(r,"key",{get:_,configurable:!0})}function c(){var r=e(this.type);return G[r]||(G[r]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),r=this.props.ref,r!==void 0?r:null}function y(r,P,_,N,te,g){var z=_.ref;return r={$$typeof:w,type:r,key:P,props:_,_owner:N},(z!==void 0?z:null)!==null?Object.defineProperty(r,"ref",{enumerable:!1,get:c}):Object.defineProperty(r,"ref",{enumerable:!1,value:null}),r._store={},Object.defineProperty(r._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(r,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(r,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:te}),Object.defineProperty(r,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:g}),Object.freeze&&(Object.freeze(r.props),Object.freeze(r)),r}function S(r,P,_,N,te,g){var z=P.children;if(z!==void 0)if(N)if(ee(z)){for(N=0;N<z.length;N++)f(z[N]);Object.freeze&&Object.freeze(z)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else f(z);if(X.call(P,"key")){z=e(r);var D=Object.keys(P).filter(function(A){return A!=="key"});N=0<D.length?"{key: someKey, "+D.join(": ..., ")+": ...}":"{key: someKey}",R[z+N]||(D=0<D.length?"{"+D.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var Mt;function ar(){return Mt||(Mt=1,process.env.NODE_ENV!=="production"&&(function(){function e(p){if(p==null)return null;if(typeof p=="function")return p.$$typeof===ne?null:p.displayName||p.name||null;if(typeof p=="string")return p;switch(p){case M:return"Fragment";case E:return"Profiler";case v:return"StrictMode";case ee:return"Suspense";case K:return"SuspenseList";case X:return"Activity"}if(typeof p=="object")switch(typeof p.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),p.$$typeof){case y:return"Portal";case D:return p.displayName||"Context";case C:return(p._context.displayName||"Context")+".Consumer";case q:var B=p.render;return p=p.displayName,p||(p=B.displayName||B.name||"",p=p!==""?"ForwardRef("+p+")":"ForwardRef"),p;case w:return B=p.displayName||null,B!==null?B:e(p.type)||"Memo";case L:B=p._payload,p=p._init;try{return e(p(B))}catch{}}return null}function t(p){return""+p}function o(p){try{t(p);var B=!1}catch{B=!0}if(B){B=console;var O=B.error,H=typeof Symbol=="function"&&Symbol.toStringTag&&p[Symbol.toStringTag]||p.constructor.name||"Object";return O.call(B,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",H),t(p)}}function i(p){if(p===M)return"<>";if(typeof p=="object"&&p!==null&&p.$$typeof===L)return"<...>";try{var B=e(p);return B?"<"+B+">":"<...>"}catch{return"<...>"}}function r(){var p=W.A;return p===null?null:p.getOwner()}function s(){return Error("react-stack-top-frame")}function n(p){if(V.call(p,"key")){var B=Object.getOwnPropertyDescriptor(p,"key").get;if(B&&B.isReactWarning)return!1}return p.key!==void 0}function u(p,B){function O(){T||(T=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",B))}O.isReactWarning=!0,Object.defineProperty(p,"key",{get:O,configurable:!0})}function a(){var p=e(this.type);return J[p]||(J[p]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),p=this.props.ref,p!==void 0?p:null}function g(p,B,O,H,fe,ge){var f=O.ref;return p={$$typeof:P,type:p,key:B,props:O,_owner:H},(f!==void 0?f:null)!==null?Object.defineProperty(p,"ref",{enumerable:!1,get:a}):Object.defineProperty(p,"ref",{enumerable:!1,value:null}),p._store={},Object.defineProperty(p._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(p,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(p,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:fe}),Object.defineProperty(p,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:ge}),Object.freeze&&(Object.freeze(p.props),Object.freeze(p)),p}function l(p,B,O,H,fe,ge){var f=B.children;if(f!==void 0)if(H)if(ae(f)){for(H=0;H<f.length;H++)c(f[H]);Object.freeze&&Object.freeze(f)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else c(f);if(V.call(B,"key")){f=e(p);var z=Object.keys(B).filter(function(b){return b!=="key"});H=0<z.length?"{key: someKey, "+z.join(": ..., ")+": ...}":"{key: someKey}",ze[f+H]||(z=0<z.length?"{"+z.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
18
18
  let props = %s;
19
19
  <%s {...props} />
20
20
  React keys must be passed directly to JSX without using spread:
21
21
  let props = %s;
22
- <%s key={someKey} {...props} />`,N,z,D,z),R[z+N]=!0)}if(z=null,_!==void 0&&(n(_),z=""+_),a(P)&&(n(P.key),z=""+P.key),"key"in P){_={};for(var h in P)h!=="key"&&(_[h]=P[h])}else _=P;return z&&l(_,typeof r=="function"?r.displayName||r.name||"Unknown":r),y(r,z,_,i(),te,g)}function f(r){d(r)?r._store&&(r._store.validated=1):typeof r=="object"&&r!==null&&r.$$typeof===Q&&(r._payload.status==="fulfilled"?d(r._payload.value)&&r._payload.value._store&&(r._payload.value._store.validated=1):r._store&&(r._store.validated=1))}function d(r){return typeof r=="object"&&r!==null&&r.$$typeof===w}var x=m,w=Symbol.for("react.transitional.element"),C=Symbol.for("react.portal"),k=Symbol.for("react.fragment"),p=Symbol.for("react.strict_mode"),b=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),U=Symbol.for("react.context"),K=Symbol.for("react.forward_ref"),W=Symbol.for("react.suspense"),B=Symbol.for("react.suspense_list"),M=Symbol.for("react.memo"),Q=Symbol.for("react.lazy"),H=Symbol.for("react.activity"),J=Symbol.for("react.client.reference"),ne=x.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,X=Object.prototype.hasOwnProperty,ee=Array.isArray,V=console.createTask?console.createTask:function(){return null};x={react_stack_bottom_frame:function(r){return r()}};var I,G={},v=x.react_stack_bottom_frame.bind(x,s)(),oe=V(o(s)),R={};Ne.Fragment=k,Ne.jsx=function(r,P,_){var N=1e4>ne.recentlyCreatedOwnerStacks++;return S(r,P,_,!1,N?Error("react-stack-top-frame"):v,N?V(o(r)):oe)},Ne.jsxs=function(r,P,_){var N=1e4>ne.recentlyCreatedOwnerStacks++;return S(r,P,_,!0,N?Error("react-stack-top-frame"):v,N?V(o(r)):oe)}})()),Ne}var St;function en(){return St||(St=1,process.env.NODE_ENV==="production"?Ge.exports=qt():Ge.exports=$t()),Ge.exports}var L=en();const Qe="-",tn=e=>{const t=rn(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:a=>{const l=a.split(Qe);return l[0]===""&&l.length!==1&&l.shift(),Pt(l,t)||nn(a)},getConflictingClassGroupIds:(a,l)=>{const c=n[a]||[];return l&&o[a]?[...c,...o[a]]:c}}},Pt=(e,t)=>{if(e.length===0)return t.classGroupId;const n=e[0],o=t.nextPart.get(n),i=o?Pt(e.slice(1),o):void 0;if(i)return i;if(t.validators.length===0)return;const s=e.join(Qe);return t.validators.find(({validator:a})=>a(s))?.classGroupId},yt=/^\[(.+)\]$/,nn=e=>{if(yt.test(e)){const t=yt.exec(e)[1],n=t?.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},rn=e=>{const{theme:t,classGroups:n}=e,o={nextPart:new Map,validators:[]};for(const i in n)Ke(n[i],o,i,t);return o},Ke=(e,t,n,o)=>{e.forEach(i=>{if(typeof i=="string"){const s=i===""?t:vt(t,i);s.classGroupId=n;return}if(typeof i=="function"){if(on(i)){Ke(i(o),t,n,o);return}t.validators.push({validator:i,classGroupId:n});return}Object.entries(i).forEach(([s,a])=>{Ke(a,vt(t,s),n,o)})})},vt=(e,t)=>{let n=e;return t.split(Qe).forEach(o=>{n.nextPart.has(o)||n.nextPart.set(o,{nextPart:new Map,validators:[]}),n=n.nextPart.get(o)}),n},on=e=>e.isThemeGetter,sn=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,o=new Map;const i=(s,a)=>{n.set(s,a),t++,t>e&&(t=0,o=n,n=new Map)};return{get(s){let a=n.get(s);if(a!==void 0)return a;if((a=o.get(s))!==void 0)return i(s,a),a},set(s,a){n.has(s)?n.set(s,a):i(s,a)}}},qe="!",$e=":",an=$e.length,ln=e=>{const{prefix:t,experimentalParseClassName:n}=e;let o=i=>{const s=[];let a=0,l=0,c=0,y;for(let w=0;w<i.length;w++){let C=i[w];if(a===0&&l===0){if(C===$e){s.push(i.slice(c,w)),c=w+an;continue}if(C==="/"){y=w;continue}}C==="["?a++:C==="]"?a--:C==="("?l++:C===")"&&l--}const S=s.length===0?i:i.substring(c),f=cn(S),d=f!==S,x=y&&y>c?y-c:void 0;return{modifiers:s,hasImportantModifier:d,baseClassName:f,maybePostfixModifierPosition:x}};if(t){const i=t+$e,s=o;o=a=>a.startsWith(i)?s(a.substring(i.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:a,maybePostfixModifierPosition:void 0}}if(n){const i=o;o=s=>n({className:s,parseClassName:i})}return o},cn=e=>e.endsWith(qe)?e.substring(0,e.length-1):e.startsWith(qe)?e.substring(1):e,dn=e=>{const t=Object.fromEntries(e.orderSensitiveModifiers.map(o=>[o,!0]));return o=>{if(o.length<=1)return o;const i=[];let s=[];return o.forEach(a=>{a[0]==="["||t[a]?(i.push(...s.sort(),a),s=[]):s.push(a)}),i.push(...s.sort()),i}},un=e=>({cache:sn(e.cacheSize),parseClassName:ln(e),sortModifiers:dn(e),...tn(e)}),fn=/\s+/,pn=(e,t)=>{const{parseClassName:n,getClassGroupId:o,getConflictingClassGroupIds:i,sortModifiers:s}=t,a=[],l=e.trim().split(fn);let c="";for(let y=l.length-1;y>=0;y-=1){const S=l[y],{isExternal:f,modifiers:d,hasImportantModifier:x,baseClassName:w,maybePostfixModifierPosition:C}=n(S);if(f){c=S+(c.length>0?" "+c:c);continue}let k=!!C,p=o(k?w.substring(0,C):w);if(!p){if(!k){c=S+(c.length>0?" "+c:c);continue}if(p=o(w),!p){c=S+(c.length>0?" "+c:c);continue}k=!1}const b=s(d).join(":"),E=x?b+qe:b,U=E+p;if(a.includes(U))continue;a.push(U);const K=i(p,k);for(let W=0;W<K.length;++W){const B=K[W];a.push(E+B)}c=S+(c.length>0?" "+c:c)}return c};function mn(){let e=0,t,n,o="";for(;e<arguments.length;)(t=arguments[e++])&&(n=wt(t))&&(o&&(o+=" "),o+=n);return o}const wt=e=>{if(typeof e=="string")return e;let t,n="";for(let o=0;o<e.length;o++)e[o]&&(t=wt(e[o]))&&(n&&(n+=" "),n+=t);return n};function gn(e,...t){let n,o,i,s=a;function a(c){const y=t.reduce((S,f)=>f(S),e());return n=un(y),o=n.cache.get,i=n.cache.set,s=l,l(c)}function l(c){const y=o(c);if(y)return y;const S=pn(c,n);return i(c,S),S}return function(){return s(mn.apply(null,arguments))}}const de=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},Ct=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,kt=/^\((?:(\w[\w-]*):)?(.+)\)$/i,hn=/^\d+\/\d+$/,xn=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,bn=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,zn=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Sn=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Pn=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Ee=e=>hn.test(e),Z=e=>!!e&&!Number.isNaN(Number(e)),ye=e=>!!e&&Number.isInteger(Number(e)),et=e=>e.endsWith("%")&&Z(e.slice(0,-1)),Pe=e=>xn.test(e),yn=()=>!0,vn=e=>bn.test(e)&&!zn.test(e),Et=()=>!1,wn=e=>Sn.test(e),Cn=e=>Pn.test(e),kn=e=>!T(e)&&!O(e),En=e=>Me(e,At,Et),T=e=>Ct.test(e),Ce=e=>Me(e,Nt,vn),tt=e=>Me(e,An,Z),Mt=e=>Me(e,_t,Et),Mn=e=>Me(e,It,Cn),Fe=e=>Me(e,Tt,wn),O=e=>kt.test(e),Te=e=>Re(e,Nt),Rn=e=>Re(e,Nn),Rt=e=>Re(e,_t),_n=e=>Re(e,At),In=e=>Re(e,It),He=e=>Re(e,Tt,!0),Me=(e,t,n)=>{const o=Ct.exec(e);return o?o[1]?t(o[1]):n(o[2]):!1},Re=(e,t,n=!1)=>{const o=kt.exec(e);return o?o[1]?t(o[1]):n:!1},_t=e=>e==="position"||e==="percentage",It=e=>e==="image"||e==="url",At=e=>e==="length"||e==="size"||e==="bg-size",Nt=e=>e==="length",An=e=>e==="number",Nn=e=>e==="family-name",Tt=e=>e==="shadow",Oe=gn(()=>{const e=de("color"),t=de("font"),n=de("text"),o=de("font-weight"),i=de("tracking"),s=de("leading"),a=de("breakpoint"),l=de("container"),c=de("spacing"),y=de("radius"),S=de("shadow"),f=de("inset-shadow"),d=de("text-shadow"),x=de("drop-shadow"),w=de("blur"),C=de("perspective"),k=de("aspect"),p=de("ease"),b=de("animate"),E=()=>["auto","avoid","all","avoid-page","page","left","right","column"],U=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],K=()=>[...U(),O,T],W=()=>["auto","hidden","clip","visible","scroll"],B=()=>["auto","contain","none"],M=()=>[O,T,c],Q=()=>[Ee,"full","auto",...M()],H=()=>[ye,"none","subgrid",O,T],J=()=>["auto",{span:["full",ye,O,T]},ye,O,T],ne=()=>[ye,"auto",O,T],X=()=>["auto","min","max","fr",O,T],ee=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],V=()=>["start","end","center","stretch","center-safe","end-safe"],I=()=>["auto",...M()],G=()=>[Ee,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...M()],v=()=>[e,O,T],oe=()=>[...U(),Rt,Mt,{position:[O,T]}],R=()=>["no-repeat",{repeat:["","x","y","space","round"]}],r=()=>["auto","cover","contain",_n,En,{size:[O,T]}],P=()=>[et,Te,Ce],_=()=>["","none","full",y,O,T],N=()=>["",Z,Te,Ce],te=()=>["solid","dashed","dotted","double"],g=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],z=()=>[Z,et,Rt,Mt],D=()=>["","none",w,O,T],h=()=>["none",Z,O,T],A=()=>["none",Z,O,T],j=()=>[Z,O,T],F=()=>[Ee,"full",...M()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Pe],breakpoint:[Pe],color:[yn],container:[Pe],"drop-shadow":[Pe],ease:["in","out","in-out"],font:[kn],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Pe],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Pe],shadow:[Pe],spacing:["px",Z],text:[Pe],"text-shadow":[Pe],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",Ee,T,O,k]}],container:["container"],columns:[{columns:[Z,T,O,l]}],"break-after":[{"break-after":E()}],"break-before":[{"break-before":E()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:K()}],overflow:[{overflow:W()}],"overflow-x":[{"overflow-x":W()}],"overflow-y":[{"overflow-y":W()}],overscroll:[{overscroll:B()}],"overscroll-x":[{"overscroll-x":B()}],"overscroll-y":[{"overscroll-y":B()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:Q()}],"inset-x":[{"inset-x":Q()}],"inset-y":[{"inset-y":Q()}],start:[{start:Q()}],end:[{end:Q()}],top:[{top:Q()}],right:[{right:Q()}],bottom:[{bottom:Q()}],left:[{left:Q()}],visibility:["visible","invisible","collapse"],z:[{z:[ye,"auto",O,T]}],basis:[{basis:[Ee,"full","auto",l,...M()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Z,Ee,"auto","initial","none",T]}],grow:[{grow:["",Z,O,T]}],shrink:[{shrink:["",Z,O,T]}],order:[{order:[ye,"first","last","none",O,T]}],"grid-cols":[{"grid-cols":H()}],"col-start-end":[{col:J()}],"col-start":[{"col-start":ne()}],"col-end":[{"col-end":ne()}],"grid-rows":[{"grid-rows":H()}],"row-start-end":[{row:J()}],"row-start":[{"row-start":ne()}],"row-end":[{"row-end":ne()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":X()}],"auto-rows":[{"auto-rows":X()}],gap:[{gap:M()}],"gap-x":[{"gap-x":M()}],"gap-y":[{"gap-y":M()}],"justify-content":[{justify:[...ee(),"normal"]}],"justify-items":[{"justify-items":[...V(),"normal"]}],"justify-self":[{"justify-self":["auto",...V()]}],"align-content":[{content:["normal",...ee()]}],"align-items":[{items:[...V(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...V(),{baseline:["","last"]}]}],"place-content":[{"place-content":ee()}],"place-items":[{"place-items":[...V(),"baseline"]}],"place-self":[{"place-self":["auto",...V()]}],p:[{p:M()}],px:[{px:M()}],py:[{py:M()}],ps:[{ps:M()}],pe:[{pe:M()}],pt:[{pt:M()}],pr:[{pr:M()}],pb:[{pb:M()}],pl:[{pl:M()}],m:[{m:I()}],mx:[{mx:I()}],my:[{my:I()}],ms:[{ms:I()}],me:[{me:I()}],mt:[{mt:I()}],mr:[{mr:I()}],mb:[{mb:I()}],ml:[{ml:I()}],"space-x":[{"space-x":M()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":M()}],"space-y-reverse":["space-y-reverse"],size:[{size:G()}],w:[{w:[l,"screen",...G()]}],"min-w":[{"min-w":[l,"screen","none",...G()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[a]},...G()]}],h:[{h:["screen","lh",...G()]}],"min-h":[{"min-h":["screen","lh","none",...G()]}],"max-h":[{"max-h":["screen","lh",...G()]}],"font-size":[{text:["base",n,Te,Ce]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,O,tt]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",et,T]}],"font-family":[{font:[Rn,T,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[i,O,T]}],"line-clamp":[{"line-clamp":[Z,"none",O,tt]}],leading:[{leading:[s,...M()]}],"list-image":[{"list-image":["none",O,T]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",O,T]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:v()}],"text-color":[{text:v()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...te(),"wavy"]}],"text-decoration-thickness":[{decoration:[Z,"from-font","auto",O,Ce]}],"text-decoration-color":[{decoration:v()}],"underline-offset":[{"underline-offset":[Z,"auto",O,T]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:M()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",O,T]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",O,T]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:oe()}],"bg-repeat":[{bg:R()}],"bg-size":[{bg:r()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},ye,O,T],radial:["",O,T],conic:[ye,O,T]},In,Mn]}],"bg-color":[{bg:v()}],"gradient-from-pos":[{from:P()}],"gradient-via-pos":[{via:P()}],"gradient-to-pos":[{to:P()}],"gradient-from":[{from:v()}],"gradient-via":[{via:v()}],"gradient-to":[{to:v()}],rounded:[{rounded:_()}],"rounded-s":[{"rounded-s":_()}],"rounded-e":[{"rounded-e":_()}],"rounded-t":[{"rounded-t":_()}],"rounded-r":[{"rounded-r":_()}],"rounded-b":[{"rounded-b":_()}],"rounded-l":[{"rounded-l":_()}],"rounded-ss":[{"rounded-ss":_()}],"rounded-se":[{"rounded-se":_()}],"rounded-ee":[{"rounded-ee":_()}],"rounded-es":[{"rounded-es":_()}],"rounded-tl":[{"rounded-tl":_()}],"rounded-tr":[{"rounded-tr":_()}],"rounded-br":[{"rounded-br":_()}],"rounded-bl":[{"rounded-bl":_()}],"border-w":[{border:N()}],"border-w-x":[{"border-x":N()}],"border-w-y":[{"border-y":N()}],"border-w-s":[{"border-s":N()}],"border-w-e":[{"border-e":N()}],"border-w-t":[{"border-t":N()}],"border-w-r":[{"border-r":N()}],"border-w-b":[{"border-b":N()}],"border-w-l":[{"border-l":N()}],"divide-x":[{"divide-x":N()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":N()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...te(),"hidden","none"]}],"divide-style":[{divide:[...te(),"hidden","none"]}],"border-color":[{border:v()}],"border-color-x":[{"border-x":v()}],"border-color-y":[{"border-y":v()}],"border-color-s":[{"border-s":v()}],"border-color-e":[{"border-e":v()}],"border-color-t":[{"border-t":v()}],"border-color-r":[{"border-r":v()}],"border-color-b":[{"border-b":v()}],"border-color-l":[{"border-l":v()}],"divide-color":[{divide:v()}],"outline-style":[{outline:[...te(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Z,O,T]}],"outline-w":[{outline:["",Z,Te,Ce]}],"outline-color":[{outline:v()}],shadow:[{shadow:["","none",S,He,Fe]}],"shadow-color":[{shadow:v()}],"inset-shadow":[{"inset-shadow":["none",f,He,Fe]}],"inset-shadow-color":[{"inset-shadow":v()}],"ring-w":[{ring:N()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:v()}],"ring-offset-w":[{"ring-offset":[Z,Ce]}],"ring-offset-color":[{"ring-offset":v()}],"inset-ring-w":[{"inset-ring":N()}],"inset-ring-color":[{"inset-ring":v()}],"text-shadow":[{"text-shadow":["none",d,He,Fe]}],"text-shadow-color":[{"text-shadow":v()}],opacity:[{opacity:[Z,O,T]}],"mix-blend":[{"mix-blend":[...g(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":g()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[Z]}],"mask-image-linear-from-pos":[{"mask-linear-from":z()}],"mask-image-linear-to-pos":[{"mask-linear-to":z()}],"mask-image-linear-from-color":[{"mask-linear-from":v()}],"mask-image-linear-to-color":[{"mask-linear-to":v()}],"mask-image-t-from-pos":[{"mask-t-from":z()}],"mask-image-t-to-pos":[{"mask-t-to":z()}],"mask-image-t-from-color":[{"mask-t-from":v()}],"mask-image-t-to-color":[{"mask-t-to":v()}],"mask-image-r-from-pos":[{"mask-r-from":z()}],"mask-image-r-to-pos":[{"mask-r-to":z()}],"mask-image-r-from-color":[{"mask-r-from":v()}],"mask-image-r-to-color":[{"mask-r-to":v()}],"mask-image-b-from-pos":[{"mask-b-from":z()}],"mask-image-b-to-pos":[{"mask-b-to":z()}],"mask-image-b-from-color":[{"mask-b-from":v()}],"mask-image-b-to-color":[{"mask-b-to":v()}],"mask-image-l-from-pos":[{"mask-l-from":z()}],"mask-image-l-to-pos":[{"mask-l-to":z()}],"mask-image-l-from-color":[{"mask-l-from":v()}],"mask-image-l-to-color":[{"mask-l-to":v()}],"mask-image-x-from-pos":[{"mask-x-from":z()}],"mask-image-x-to-pos":[{"mask-x-to":z()}],"mask-image-x-from-color":[{"mask-x-from":v()}],"mask-image-x-to-color":[{"mask-x-to":v()}],"mask-image-y-from-pos":[{"mask-y-from":z()}],"mask-image-y-to-pos":[{"mask-y-to":z()}],"mask-image-y-from-color":[{"mask-y-from":v()}],"mask-image-y-to-color":[{"mask-y-to":v()}],"mask-image-radial":[{"mask-radial":[O,T]}],"mask-image-radial-from-pos":[{"mask-radial-from":z()}],"mask-image-radial-to-pos":[{"mask-radial-to":z()}],"mask-image-radial-from-color":[{"mask-radial-from":v()}],"mask-image-radial-to-color":[{"mask-radial-to":v()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":U()}],"mask-image-conic-pos":[{"mask-conic":[Z]}],"mask-image-conic-from-pos":[{"mask-conic-from":z()}],"mask-image-conic-to-pos":[{"mask-conic-to":z()}],"mask-image-conic-from-color":[{"mask-conic-from":v()}],"mask-image-conic-to-color":[{"mask-conic-to":v()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:oe()}],"mask-repeat":[{mask:R()}],"mask-size":[{mask:r()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",O,T]}],filter:[{filter:["","none",O,T]}],blur:[{blur:D()}],brightness:[{brightness:[Z,O,T]}],contrast:[{contrast:[Z,O,T]}],"drop-shadow":[{"drop-shadow":["","none",x,He,Fe]}],"drop-shadow-color":[{"drop-shadow":v()}],grayscale:[{grayscale:["",Z,O,T]}],"hue-rotate":[{"hue-rotate":[Z,O,T]}],invert:[{invert:["",Z,O,T]}],saturate:[{saturate:[Z,O,T]}],sepia:[{sepia:["",Z,O,T]}],"backdrop-filter":[{"backdrop-filter":["","none",O,T]}],"backdrop-blur":[{"backdrop-blur":D()}],"backdrop-brightness":[{"backdrop-brightness":[Z,O,T]}],"backdrop-contrast":[{"backdrop-contrast":[Z,O,T]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Z,O,T]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Z,O,T]}],"backdrop-invert":[{"backdrop-invert":["",Z,O,T]}],"backdrop-opacity":[{"backdrop-opacity":[Z,O,T]}],"backdrop-saturate":[{"backdrop-saturate":[Z,O,T]}],"backdrop-sepia":[{"backdrop-sepia":["",Z,O,T]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":M()}],"border-spacing-x":[{"border-spacing-x":M()}],"border-spacing-y":[{"border-spacing-y":M()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",O,T]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Z,"initial",O,T]}],ease:[{ease:["linear","initial",p,O,T]}],delay:[{delay:[Z,O,T]}],animate:[{animate:["none",b,O,T]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[C,O,T]}],"perspective-origin":[{"perspective-origin":K()}],rotate:[{rotate:h()}],"rotate-x":[{"rotate-x":h()}],"rotate-y":[{"rotate-y":h()}],"rotate-z":[{"rotate-z":h()}],scale:[{scale:A()}],"scale-x":[{"scale-x":A()}],"scale-y":[{"scale-y":A()}],"scale-z":[{"scale-z":A()}],"scale-3d":["scale-3d"],skew:[{skew:j()}],"skew-x":[{"skew-x":j()}],"skew-y":[{"skew-y":j()}],transform:[{transform:[O,T,"","none","gpu","cpu"]}],"transform-origin":[{origin:K()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:F()}],"translate-x":[{"translate-x":F()}],"translate-y":[{"translate-y":F()}],"translate-z":[{"translate-z":F()}],"translate-none":["translate-none"],accent:[{accent:v()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:v()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",O,T]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":M()}],"scroll-mx":[{"scroll-mx":M()}],"scroll-my":[{"scroll-my":M()}],"scroll-ms":[{"scroll-ms":M()}],"scroll-me":[{"scroll-me":M()}],"scroll-mt":[{"scroll-mt":M()}],"scroll-mr":[{"scroll-mr":M()}],"scroll-mb":[{"scroll-mb":M()}],"scroll-ml":[{"scroll-ml":M()}],"scroll-p":[{"scroll-p":M()}],"scroll-px":[{"scroll-px":M()}],"scroll-py":[{"scroll-py":M()}],"scroll-ps":[{"scroll-ps":M()}],"scroll-pe":[{"scroll-pe":M()}],"scroll-pt":[{"scroll-pt":M()}],"scroll-pr":[{"scroll-pr":M()}],"scroll-pb":[{"scroll-pb":M()}],"scroll-pl":[{"scroll-pl":M()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",O,T]}],fill:[{fill:["none",...v()]}],"stroke-w":[{stroke:[Z,Te,Ce,tt]}],stroke:[{stroke:["none",...v()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}}),Tn=({panel:e,isLastFlexiblePanel:t,measuredPixelSize:n,measuredPercentageSize:o,containerAxisSize:i,containerLabel:s})=>{const a=e?.size,l=typeof a=="number"&&Number.isFinite(a)?`${a.toFixed(3)}px`:"-",c=e?.percentageSize!==void 0?`${e.percentageSize.toFixed(3)}%`:"-",y=Number.isFinite(n)?`${n.toFixed(3)}px`:"-",S=Number.isFinite(o)?`${o.toFixed(3)}%`:"-",f=Number.isFinite(i)?`${i.toFixed(3)}px`:"-",d=`${l} / ${c}`,x=`${y} / ${S}`,w=`${e?.sizeUnit==="pixels"?"Fixed":"Flexible"}${t?" (Grow)":""}`,C=[w,`${s}: ${f}`,`size (state): ${d}`,`size (measured): ${x}`];return{stateValueDisplay:d,measuredValueDisplay:x,containerDisplay:f,headlineLabel:w,titleText:C.join(`
23
- `)}},On=m.memo(({panel:e,isLastFlexiblePanel:t,measuredPixelSize:n,measuredPercentageSize:o,containerAxisSize:i,direction:s})=>{const a=s==="horizontal"?"container width":"container height",{stateValueDisplay:l,measuredValueDisplay:c,containerDisplay:y,headlineLabel:S,titleText:f}=m.useMemo(()=>Tn({panel:e,isLastFlexiblePanel:t,measuredPixelSize:n,measuredPercentageSize:o,containerAxisSize:i,containerLabel:a}),[e,t,n,o,i,a]),d={position:"absolute",top:"2px",right:"4px",backgroundColor:"rgba(30, 41, 59, 0.6)",color:"#fff",padding:"4px 8px",borderRadius:"6px",fontSize:"11px",fontFamily:"monospace",pointerEvents:"auto",zIndex:10,boxShadow:"0 2px 4px rgba(0,0,0,0.3)",border:"1px solid rgba(255,255,255,0.1)",maxWidth:"calc(100% - 12px)",minWidth:"60px",width:"fit-content",overflow:"hidden"},x={display:"flex",flexDirection:"column",gap:"1px",minWidth:"0",width:"100%"},w={display:"flex",justifyContent:"flex-start",alignItems:"center",gap:"6px",fontSize:"10px",color:"#ccc",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:"0",width:"100%"},C={display:"flex",justifyContent:"space-between",alignItems:"center",gap:"6px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:"0",width:"100%"},k={marginLeft:"auto",fontVariantNumeric:"tabular-nums",whiteSpace:"nowrap"};return L.jsx("div",{style:d,title:f,children:L.jsxs("div",{style:x,children:[L.jsx("div",{style:w,children:L.jsx("span",{children:S})}),L.jsxs("div",{style:C,children:[L.jsx("span",{children:a}),L.jsx("span",{style:k,children:y})]}),L.jsxs("div",{style:C,children:[L.jsx("span",{children:"size (state)"}),L.jsx("span",{style:k,children:l})]}),L.jsxs("div",{style:C,children:[L.jsx("span",{children:"size (measured)"}),L.jsx("span",{style:k,children:c})]})]})})}),jn=m.memo(({id:e,defaultSize:t={value:50,unit:"percentage"},minSize:n,maxSize:o,className:i,style:s,children:a,order:l=0,collapsible:c=!1,defaultCollapsed:y=!1,pixelAdjustPriority:S,contentOverflow:f="auto"})=>{const{direction:d,registerPanel:x,unregisterPanel:w,getPanel:C,showDebugInfo:k,panels:p,isContainerReady:b,reportPanelMeasurement:E,containerSize:U}=Be(),K=m.useRef(null),W=m.useRef(e||pt()),B=C(W.current),M=!!B?.collapsed,Q=(B?.size??0)<=0,H=M||Q,[J,ne]=m.useState(()=>{const h=ke(t);return h?.unit==="pixels"?h.value:B?.size!==void 0?B.size:0}),[X,ee]=m.useState(()=>{const h=ke(t);return h?.unit==="percentage"?h.value:B?.percentageSize!==void 0?B.percentageSize:0}),V=m.useRef(X);V.current=X;const I=m.useRef(J);I.current=J;const G=m.useCallback(h=>{if(!Number.isFinite(h))return;const A=h<0?0:h;I.current!==A&&(I.current=A,console.debug("[resize-panels] commit pixel",{panelId:W.current,pixel:A}),ne(A))},[]),v=m.useCallback(h=>{if(!Number.isFinite(h))return;const A=h<0?0:h;V.current!==A&&(V.current=A,console.debug("[resize-panels] commit percentage",{panelId:W.current,percentage:A}),ee(A))},[]);m.useEffect(()=>{e||console.warn("Panel component should have an explicit 'id' prop to avoid hydration issues. Auto-generated ID may cause SSR/client mismatch.")},[e]),m.useEffect(()=>{if(!b)return;const h=ke(t),A=h?.unit==="pixels";let j=0;if(A){let Y=h.value;n&&typeof n=="object"&&n.unit==="pixels"&&(Y=Math.max(Y,n.value)),o&&typeof o=="object"&&o.unit==="pixels"&&(Y=Math.min(Y,o.value)),j=Y}const F=A?void 0:h?.value,$=y,se=c&&$&&A?j:void 0,q=c?F:void 0,re={id:W.current,size:$?0:j,percentageSize:$?0:F,sizeUnit:h?.unit||"percentage",originalPixelSize:A?j:void 0,minSize:n,maxSize:o,collapsible:c,collapsed:$,sizeBeforeCollapse:se,percentageSizeBeforeCollapse:q,pixelAdjustPriority:S};return x(re),()=>{w(W.current),E(W.current,null)}},[t,n,o,x,w,c,y,S,E,b]);const oe=B?.size??0;m.useEffect(()=>{const h=K.current;if(!h)return;const A=()=>{if(!B)return;const q=h.parentElement;if(!q)return;const{width:re,height:u}=h.getBoundingClientRect(),{inner:Y}=be(q,"horizontal"),{inner:ue}=be(q,"vertical"),ae=d==="horizontal"?re:u,ce=d==="horizontal"?Y:ue,xe=Xe(ce);if(H){I.current!==0&&(I.current=0,ne(0)),V.current!==0&&(V.current=0,ee(0));return}const ge=B?.size??0,fe=Math.max(2,xe*.5);if(!H&&ge>xe&&ae<fe){console.debug("[resize-panels] skip noisy measurement",{panelId:W.current,expectedPanelSize:ge,measured:ae,noiseThreshold:fe});return}if(ae>0){if(G(ae),ce>0){const he=ae/ce*100;v(he)}}else if(B?.size!==void 0&&G(B.size),B?.percentageSize!==void 0){const he=B.percentageSize;v(he)}else if(B?.sizeUnit==="pixels"&&B?.size!==void 0&&ce>0){const he=B.size/ce*100;v(he)}},j=new ResizeObserver(()=>{A()});j.observe(h),A();const F=[],$=new MutationObserver(()=>{(()=>{if(!K.current)return!1;const re=K.current.getBoundingClientRect();return(d==="horizontal"?re.width:re.height)!==I.current})()&&setTimeout(A,0)}),se=h.parentElement;return se&&$.observe(se,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style","class"]}),()=>{j.disconnect(),$.disconnect();for(const q of F)clearTimeout(q)}},[d,B,H,G,v]);const R=B?.size,r=B?.percentageSize,P=B?.sizeUnit;m.useEffect(()=>{if(B){if(H){I.current!==0&&(I.current=0,ne(0)),V.current!==0&&(V.current=0,ee(0));return}if(R!==void 0&&G(R),r!==void 0)v(r);else if(P==="pixels"&&R!==void 0){const h=K.current,A=h?.parentElement;if(h&&A){const{width:j,height:F}=h.getBoundingClientRect(),$=A.clientWidth,se=A.clientHeight,q=d==="horizontal"?j:F,re=d==="horizontal"?$:se;if(q>0&&re>0){const u=q/re*100;v(u)}}}}},[R,r,P,d,H,G,v,B]),m.useEffect(()=>{E(W.current,{pixelSize:J,percentageSize:X})},[E,J,X]);const _=()=>H?"0px":B?.originalPixelSize!==void 0?`${oe}px`:B?.percentageSize!==void 0?`${B.percentageSize}%`:`${oe}px`,N=(()=>{if(!p||p.length===0)return!1;const h=p.filter(F=>F.sizeUnit==="percentage");if(h.length===0||h[h.length-1]?.id!==W.current)return!1;const j=B?.percentageSize;return!(j!==void 0&&h.filter($=>Math.abs(($.percentageSize||0)-j)<.01).length>1)})(),te=B?.sizeUnit==="percentage"&&!B?.collapsed?1:0,g={flexBasis:_(),flexGrow:N?1:0,flexShrink:te,overflow:"hidden",position:"relative",boxSizing:"border-box",minHeight:"0px",minWidth:"0px",...s};d==="horizontal"?(g.height="100%",g.minWidth=0):(g.width="100%",g.minHeight=0),H&&(d==="horizontal"?(g.width="0px",g.minWidth="0px"):(g.height="0px",g.minHeight="0px"),g.flexGrow=0,g.flexShrink=0,g.pointerEvents="none",g.visibility="hidden",M&&(g.display="none"));const z=d==="horizontal"?U.width:U.height,D=m.useMemo(()=>({position:"absolute",inset:"0px",overflow:f,display:"flex",flexDirection:"column",width:"100%",height:"100%",minWidth:"0px",minHeight:"0px"}),[f]);return L.jsxs("div",{ref:K,className:Oe("panel",i),style:g,"data-panel-id":W.current,"data-panel-size":oe,"data-panel-size-unit":B?.sizeUnit||"percentage","data-panel-pixel-size":B?.sizeUnit==="pixels"?B?.originalPixelSize:null,"data-panel-order":l,"data-panel-collapsible":c,"data-panel-collapsed":B?.collapsed,"aria-hidden":H,children:[L.jsx("div",{style:D,children:a}),k&&L.jsx(On,{panel:B,isLastFlexiblePanel:N,measuredPixelSize:J,measuredPercentageSize:X,containerAxisSize:z,direction:d})]})}),Bn=e=>JSON.stringify(e.map(t=>({id:t.id,size:t.size,percentageSize:t.percentageSize??null,sizeUnit:t.sizeUnit,originalPixelSize:t.originalPixelSize??null,minSize:t.minSize??null,maxSize:t.maxSize??null,collapsible:t.collapsible??!1,collapsed:t.collapsed??!1,sizeBeforeCollapse:t.sizeBeforeCollapse??null,measuredPixelSizeBeforeCollapse:t.measuredPixelSizeBeforeCollapse??null,pixelAdjustPriority:t.pixelAdjustPriority??null,measuredPixelSize:t.measuredPixelSize??null,measuredPercentageSize:t.measuredPercentageSize??null}))),Ln=e=>JSON.stringify(e.map(t=>({id:t.id,thickness:t.thickness,visible:t.visible,direction:t.direction,startPanelId:t.startPanelId??null,endPanelId:t.endPanelId??null}))),ze=(()=>{const e=new Set,t=new Map,n=new Set;let o=null,i=0,s=!0,a=[],l={ownerId:null,groups:a};const c=()=>{for(const p of e)p()},y=()=>{s=!0,c()},S=()=>{const p=o;if(p&&n.has(p))return!1;o=null;const b=n.values().next();return b.done||(o=b.value),p!==o};return{subscribe:p=>(e.add(p),()=>{e.delete(p)}),getSnapshot:()=>(S()&&(s=!0),s&&(a=Array.from(t.values()).sort((b,E)=>b.index-E.index).map(({serializedPanels:b,serializedHandles:E,...U})=>U),l={ownerId:o,groups:a},s=!1),l),getOwnerId:()=>(S()&&(s=!0),o),enableGroup:p=>{const b=n.size;n.add(p),n.size!==b&&S()&&y()},disableGroup:p=>{n.delete(p)&&S()&&y()},updateGroup:(p,b)=>{const E=t.get(p),U=E?.index??i++,K=Bn(b.panels),W=Ln(b.handles),B=E?.displayName!==b.displayName,M=E?.direction!==b.direction,Q=E?E.containerSize.width!==b.containerSize.width||E.containerSize.height!==b.containerSize.height:!0;let H=E?.serializedPanels!==K;if(!H&&E)if(E.panels.length!==b.panels.length)H=!0;else for(let V=0;V<b.panels.length;V+=1){const I=E.panels[V],G=b.panels[V];if(!(I&&G)){H=!0;break}if(I.id!==G.id||I.size!==G.size||I.percentageSize!==G.percentageSize||I.collapsed!==G.collapsed||I.measuredPixelSize!==G.measuredPixelSize||I.measuredPercentageSize!==G.measuredPercentageSize){H=!0;break}}let J=E?.serializedHandles!==W;if(!J&&E)if(E.handles.length!==b.handles.length)J=!0;else for(let V=0;V<b.handles.length;V+=1){const I=E.handles[V],G=b.handles[V];if(!(I&&G)){J=!0;break}if(I.id!==G.id||I.thickness!==G.thickness||I.visible!==G.visible||I.direction!==G.direction||I.startPanelId!==G.startPanelId||I.endPanelId!==G.endPanelId){J=!0;break}}if(!E&&b.panels.length===0&&b.handles.length===0||E&&!B&&!M&&!Q&&!H&&!J)return;const ne=b.panels.map(V=>({...V})),X=b.handles.map(V=>({...V})),ee={...b.containerSize};t.set(p,{groupId:p,displayName:b.displayName,direction:b.direction,containerSize:ee,panels:ne,handles:X,index:U,serializedPanels:K,serializedHandles:W}),y()},removeGroup:p=>{const b=t.delete(p),E=n.delete(p),U=S();(b||E||U)&&y()}}})(),Dn=()=>m.useSyncExternalStore(ze.subscribe,ze.getOwnerId,ze.getOwnerId),Gn=()=>m.useSyncExternalStore(ze.subscribe,ze.getSnapshot,ze.getSnapshot),Fn=e=>{ze.enableGroup(e)},Ot=e=>{ze.disableGroup(e)},Hn=(e,t)=>{ze.updateGroup(e,t)},jt=e=>{ze.removeGroup(e)};let Bt=0;const Wn=()=>(Bt+=1,`panel-group-${Bt}`),Lt=(e,t)=>typeof e!="number"||!Number.isFinite(e)?"—":`${(e<0?0:e).toFixed(8)}${t}`,We=e=>Lt(e,"px"),Dt=e=>Lt(e,"%"),Un=e=>{const{id:t,className:n,style:o,children:i,direction:s}=e,{groupRef:a,contextValue:l,groupStyle:c}=xt(e),[y,S]=m.useState({width:0,height:0}),f=l.layoutConstraintViolation,d=!!f,x=d&&f?L.jsxs("div",{className:"flex w-full flex-1 flex-col items-center justify-center gap-2 rounded-lg border border-slate-300 border-dashed bg-slate-100/70 px-6 py-8 text-center text-slate-600 text-sm dark:border-slate-600 dark:bg-slate-800/50 dark:text-slate-200","data-panel-group-placeholder":"constraint-violation",children:[L.jsx("span",{children:f.reason==="minimum-exceeded"?"Layout unavailable: minimum panel sizes exceed the container.":"Layout unavailable: panels cannot fill the container with their maximum sizes."}),L.jsx("span",{className:"text-slate-500 text-xs dark:text-slate-400",children:f.reason==="minimum-exceeded"?`Min required: ${Math.ceil(f.totalMinimumSize??0)}px | Available: ${Math.floor(f.availableContainerSize)}px`:`Max total: ${Math.floor(f.totalMaximumSize??0)}px | Needed: ${Math.floor(f.availableContainerSize)}px`})]}):null,C=m.useRef(t??Wn()).current,k=t??C,p=l.showDebugInfo&&l.panels.length>0,b=p?l.panels:[],E=p?l.panelMeasurements:{},U=m.useMemo(()=>{if(!p)return[];const J=Object.values(l.handleMeasurements);return J.length<=1?J:J.slice().sort((ne,X)=>ne.id.localeCompare(X.id))},[l.handleMeasurements,p]),K=l.containerSize,W=y.width>0?y.width:K.width,B=y.height>0?y.height:K.height,M=Dn(),Q=p&&M===C;m.useLayoutEffect(()=>{if(!p){S({width:0,height:0});return}if(typeof window>"u"||typeof ResizeObserver>"u")return;const J=a.current;if(!J)return;const ne=new ResizeObserver(v=>{for(const oe of v){if(oe.target!==J)continue;const R=oe.target,r=R?be(R,"horizontal"):null,P=R?be(R,"vertical"):null,_=r?r.inner:0,N=P?P.inner:0,te=oe.contentRect.width,g=oe.contentRect.height,z=_>0?_:te,D=N>0?N:g;S(h=>h.width===z&&h.height===D?h:{width:z,height:D})}});ne.observe(J);const{inner:X}=be(J,"horizontal"),{inner:ee}=be(J,"vertical"),V=J.getBoundingClientRect(),I=X>0?X:V.width,G=ee>0?ee:V.height;return S({width:I,height:G}),()=>{ne.disconnect()}},[a,p]);const H=m.useMemo(()=>{if(b.length===0)return b;let J=!1;const ne=b.map(X=>{const ee=E[X.id];return!ee||X.measuredPixelSize===ee.pixelSize&&X.measuredPercentageSize===ee.percentageSize?X:(J=!0,{...X,measuredPixelSize:ee.pixelSize,measuredPercentageSize:ee.percentageSize})});return J?ne:b},[b,E]);return m.useEffect(()=>{if(!p){Ot(C),jt(C);return}return Fn(C),()=>{Ot(C),jt(C)}},[p,C]),m.useEffect(()=>{p&&Hn(C,{displayName:k,direction:s,containerSize:{width:W,height:B},panels:H,handles:U})},[p,C,k,s,W,B,H,U]),L.jsxs(Ve.Provider,{value:l,children:[L.jsx("div",{ref:a,className:Oe("panel-group",s==="horizontal"?"flex-row":"flex-col",n),style:{...c,...o},"data-panel-group-id":t,"data-panel-group-direction":s,children:d?x:i}),Q&&L.jsx(Vn,{})]})},Vn=()=>{const t=Gn().groups,[n,o]=m.useState(!0);if(t.length===0||typeof document>"u")return null;const i=t.reduce((c,y)=>c+y.panels.length,0),s=t.reduce((c,y)=>c+(y.handles?.length??0),0),a=()=>{o(c=>!c)},l=L.jsxs("div",{style:{position:"fixed",left:"50%",bottom:"20px",transform:"translate(-50%, 0)",zIndex:100,maxWidth:"min(90vw, 1120px)",width:"100%",padding:n?"10px 18px":"14px 18px",borderRadius:"14px",backgroundColor:"rgba(15, 23, 42, 0.72)",color:"#e2e8f0",fontFamily:"monospace",fontSize:"11px",lineHeight:1.6,boxShadow:"0 22px 45px rgba(15,23,42,0.45)",border:"1px solid rgba(148, 163, 184, 0.22)",backdropFilter:"blur(10px)",WebkitBackdropFilter:"blur(10px)",pointerEvents:"auto",overflow:"auto",maxHeight:n?"52px":"min(65vh, 520px)",transition:"max-height 0.24s ease, padding 0.24s ease"},children:[L.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",flexWrap:"wrap",gap:"12px",marginBottom:n?0:"12px"},children:[L.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[L.jsx("span",{style:{fontWeight:700,fontSize:"12px",letterSpacing:"0.03em"},children:"Panel Overview"}),L.jsxs("span",{style:{color:"#cbd5f5"},children:["groups: ",t.length," / panels: ",i," / resizers: ",s]})]}),L.jsx("button",{type:"button",onClick:()=>a(),style:{padding:"6px 10px",borderRadius:"9999px",border:"1px solid rgba(148, 163, 184, 0.35)",backgroundColor:n?"rgba(59, 130, 246, 0.2)":"rgba(71, 85, 105, 0.45)",color:"#e2e8f0",fontWeight:600,fontSize:"10px",letterSpacing:"0.03em",textTransform:"uppercase",cursor:"pointer",transition:"background-color 0.18s ease, 0.18s ease border-color"},title:n?"Panel Overview を開く":"Panel Overview を閉じる",children:n?"開く":"閉じる"})]}),!n&&L.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"12px",maxHeight:"45vh",overflowY:"auto",paddingRight:"6px"},children:t.map((c,y)=>{const S=c.direction==="horizontal"?c.containerSize.width:c.containerSize.height;return L.jsxs("div",{style:{padding:"10px 12px",borderRadius:"10px",backgroundColor:"rgba(30, 41, 59, 0.55)",border:"1px solid rgba(148, 163, 184, 0.18)",display:"flex",flexDirection:"column",gap:"10px"},children:[L.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",flexWrap:"wrap",gap:"10px",color:"#dbeafe"},children:[L.jsxs("span",{style:{fontWeight:600,fontSize:"11px",letterSpacing:"0.02em",textTransform:"uppercase"},children:["group ",y+1,": ",c.displayName]}),L.jsxs("span",{children:["direction: ",c.direction," / container: ",We(c.containerSize.width)," × ",We(c.containerSize.height)]})]}),L.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(220px, 1fr))",gap:"10px"},children:c.panels.map((f,d)=>{const x=f.measuredPixelSize??f.size,w=f.size,C=We(w),k=f.percentageSize??(S>0?f.size/S*100:void 0),p=f.measuredPercentageSize!==void 0?f.measuredPercentageSize:S>0?x/S*100:void 0,b=f.collapsed||x<=it,E=f.collapsed?"collapsed":b?"hidden":"visible",U=Dt(k),K=Dt(p),W=We(x);return L.jsxs("div",{style:{padding:"8px 10px",borderRadius:"8px",backgroundColor:"rgba(15, 23, 42, 0.55)",border:"1px solid rgba(148, 163, 184, 0.16)",display:"flex",flexDirection:"column",gap:"4px"},children:[L.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"6px"},children:[L.jsx("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis"},children:f.id}),L.jsx("span",{style:{padding:"2px 6px",borderRadius:"9999px",fontSize:"10px",textTransform:"uppercase",backgroundColor:f.collapsed?"rgba(251, 113, 133, 0.25)":b?"rgba(250, 204, 21, 0.25)":"rgba(74, 222, 128, 0.25)",color:f.collapsed?"#fecdd3":b?"#fef08a":"#bbf7d0"},children:E})]}),L.jsxs("div",{style:{display:"grid",gridTemplateColumns:"auto 1fr",gap:"2px 10px",color:"#e2e8f0"},children:[L.jsx("span",{children:"size (state):"}),L.jsx("span",{children:C}),L.jsx("span",{children:"size (measured):"}),L.jsx("span",{children:W}),L.jsx("span",{children:"percentage (state):"}),L.jsx("span",{children:U}),L.jsx("span",{children:"percentage (measured):"}),L.jsx("span",{children:K}),L.jsx("span",{children:"unit:"}),L.jsx("span",{children:f.sizeUnit}),L.jsx("span",{children:"min:"}),L.jsx("span",{children:f.minSize!==void 0?JSON.stringify(f.minSize):"—"}),L.jsx("span",{children:"max:"}),L.jsx("span",{children:f.maxSize!==void 0?JSON.stringify(f.maxSize):"—"}),L.jsx("span",{children:"priority:"}),L.jsx("span",{children:f.pixelAdjustPriority??"—"})]})]},f.id||d)})})]},c.groupId)})})]});return Wt.createPortal(l,document.body)},Yn=m.memo(({id:e,disabled:t=!1,className:n,style:o,children:i,onDragging:s})=>{const{direction:a,resizePanels:l,getPanel:c,collapsePanel:y,expandPanel:S,panels:f,reportHandleMeasurement:d,containerSize:x}=Be(),[w,C]=m.useState(!1),k=m.useRef(null),p=m.useRef(null),b=m.useRef(""),E=m.useRef(""),[U,K]=m.useState({left:null,right:null}),W=m.useRef(e??Zt()),B=m.useRef(null),M=e??W.current;m.useEffect(()=>{if(k.current){const g=k.current.parentElement;if(g){p.current=g;const z=Array.from(g.children),D=k.current,h=z.indexOf(D);if(h>0&&h<z.length-1){let A=null,j=null;for(let F=h-1;F>=0;F-=1){const $=z[F];if($.dataset.panelId){A=$;break}}for(let F=h+1;F<z.length;F+=1){const $=z[F];if($.dataset.panelId){j=$;break}}b.current=A?.dataset.panelId||"",E.current=j?.dataset.panelId||"",K({left:b.current||null,right:E.current||null})}}}},[]),m.useEffect(()=>{if(M===W.current)return;const g=W.current;W.current=M,B.current=null,g!==M&&d(g,null)},[d,M]),m.useEffect(()=>{const g=W.current;return()=>{d(g,null)}},[d]);const Q=m.useCallback(g=>{if(t||!p.current)return;g.preventDefault(),g.stopPropagation();const z=p.current,{inner:D}=be(z,a),h={x:g.clientX,y:g.clientY},A=c(b.current),j=c(E.current);if(!(A&&j))return;const F=A.size,$=j.size;let se=0;const q=Vt;C(!0),s?.(!0),g.currentTarget.setPointerCapture(g.pointerId);const re=Y=>{if(!k.current)return;Y.preventDefault(),Y.stopPropagation();const ue=performance.now();if(ue-se<q)return;se=ue;const ae=a==="horizontal"?Y.clientX-h.x:Y.clientY-h.y;if(ae===0)return;const ce=F+ae,xe=$-ae,ge=c(b.current),fe=c(E.current);if(ge&&fe&&b.current&&E.current){const _e=ie(ge.minSize,0,D),he=ie(fe.minSize,0,D),Se=_e,ve=he,Gt=Math.min(D*st,at),Ft=Math.min(D*Yt,Xt);if(fe.collapsible&&!fe.collapsed&&xe<=Math.max(he*.3,Gt)){y(E.current);return}if(ge.collapsible&&!ge.collapsed&&ce<=Math.max(_e*.3,Gt)){y(b.current);return}if(fe.collapsed&&xe>Math.max(he*.3,Ft)){S(E.current,xe);return}if(ge.collapsed&&ce>Math.max(_e*.3,Ft)){S(b.current,ce);return}if(D>0){const Ht=ge.size+fe.size,Ue=Xe(D);let nt=!1;if(Se<=Ue&&ce<=Ue&&F!==0){const je=Math.max(0,Ht-0);je>=ve&&(l(b.current,E.current,0,je),nt=!0)}else if(ve<=Ue&&xe<=Ue&&$!==0){const je=Math.max(0,Ht-0);je>=Se&&(l(b.current,E.current,je,0),nt=!0)}if(nt)return}if(ge.collapsed||fe.collapsed)return;l(b.current,E.current,ce,xe)}},u=()=>{C(!1),s?.(!1),document.removeEventListener("pointermove",re),document.removeEventListener("pointerup",u)};document.addEventListener("pointermove",re),document.addEventListener("pointerup",u)},[t,a,l,c,y,S,s]),H=a==="horizontal",ne=Oe("group absolute z-20 flex select-none items-center justify-center border-none bg-transparent transition-colors duration-150 overflow-visible",H?"cursor-col-resize":"cursor-row-resize",H?"h-full":"w-full",!t&&"hover:bg-gray-200/70 dark:hover:bg-gray-700/70",!t&&"active:bg-blue-300/60 dark:active:bg-blue-700/60",w&&"bg-blue-200/80 dark:bg-blue-800/60",t&&"cursor-not-allowed opacity-50","focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-opacity-50",n),X=m.useMemo(()=>{const g=z=>{if(!z)return-1;for(let D=0;D<f.length;D+=1)if(f[D].id===z)return D;return-1};return{left:g(U.left),right:g(U.right)}},[U.left,U.right,f]),ee=H?x.width:x.height,V=m.useMemo(()=>{const g=(z,D)=>{if(z>D)return 0;let h=0;for(let A=z;A<=D;A+=1){const j=f[A];if(!j)continue;const F=j.size??0,$=Math.max(0,F);h+=j.collapsed?0:$}return h};return X.left>=0?g(0,X.left):X.right>0?g(0,X.right-1):0},[X.left,X.right,f]),I=m.useMemo(()=>!Number.isFinite(V)||V<0?0:ee>0&&V>ee?ee:V,[V,ee]),G=m.useMemo(()=>{const g={position:"absolute",zIndex:20,touchAction:"none"};return H?(g.top=0,g.left=`${I}px`,g.transform="translateX(-50%)",g.width=`${ot}px`,g.height="100%"):(g.left=0,g.top=`${I}px`,g.transform="translateY(-50%)",g.height=`${ot}px`,g.width="100%"),g},[I,H]),v=m.useMemo(()=>{const g=Xe(ee),z=q=>{if(q<0||q>=f.length)return!1;const re=f[q];return re?re.collapsed?!0:re.size<=g:!1},D=(q,re)=>{if(!z(q))return 0;let u=0;for(let Y=q;Y>=0&&Y<f.length&&z(Y);Y+=re)u+=1;return u},h=X.left,A=X.right,j=h>=0?D(h,-1):0,F=A>=0?D(A,1):0;return{groupSize:j+F+1,overlapIndex:j}},[X.left,X.right,f,ee]),oe=m.useMemo(()=>{if(v.groupSize<=1)return!1;const g=v.groupSize-1;return v.overlapIndex>0&&v.overlapIndex<g},[v]),R=m.useMemo(()=>{if(v.groupSize<=1||oe)return 0;const g=v.groupSize>1?2:1;if(g===1)return 0;const z=v.overlapIndex===0?0:g-1,D=(g-1)/2;return(z-D)*Ut},[v,oe]),r=m.useMemo(()=>{if(oe)return{display:"none"};if(R!==0)return H?{transform:`translateX(${R}px)`}:{transform:`translateY(${R}px)`}},[R,H,oe]),P=Oe("flex items-center justify-center rounded-full bg-white text-slate-700 ring-1 ring-inset ring-white/80 backdrop-blur-sm transition-colors duration-150 shadow-[0_0_0_1px_rgba(255,255,255,0.85),0_1px_3px_rgba(15,23,42,0.18)]","dark:bg-slate-800/95 dark:text-slate-200 dark:ring-slate-500/60 dark:shadow-[0_0_0_1px_rgba(148,163,184,0.45),0_1px_3px_rgba(2,6,23,0.55)]",H?"h-12 w-[6px] px-[2px]":"h-[6px] w-20 py-[2px]",w&&"bg-blue-200/80 ring-blue-300 shadow-[0_0_0_1px_rgba(191,219,254,0.65),0_1px_4px_rgba(59,130,246,0.45)] dark:bg-blue-900/70 dark:ring-blue-400 dark:shadow-[0_0_0_1px_rgba(147,197,253,0.5),0_1px_4px_rgba(59,130,246,0.55)]"),_=Oe("rounded-full bg-slate-600 transition-colors duration-150 shadow-[0_0_0_1px_rgba(255,255,255,0.9)] dark:bg-slate-200 dark:shadow-[0_0_0_1px_rgba(15,23,42,0.55)]",H?"h-8 w-[2px]":"h-[2px] w-16",w&&"bg-blue-500 dark:bg-blue-300",!t&&"group-hover:bg-slate-700 dark:group-hover:bg-slate-100"),N=m.useCallback(()=>{const g=k.current;if(!g)return;let z=0;if(!oe){const A=a==="horizontal"?g.offsetWidth:g.offsetHeight;let j=0,F=0;if(typeof window<"u"){const se=window.getComputedStyle(g);a==="horizontal"?(j=Number.parseFloat(se.marginLeft||"0"),F=Number.parseFloat(se.marginRight||"0")):(j=Number.parseFloat(se.marginTop||"0"),F=Number.parseFloat(se.marginBottom||"0"))}z=[A,j,F].reduce((se,q)=>Number.isFinite(q)?se+q:se,0)}(!Number.isFinite(z)||z<0)&&(z=0);const D={id:M,thickness:z,direction:a,visible:!oe&&z>Jt,startPanelId:U.left,endPanelId:U.right},h=B.current;h&&Math.abs(h.thickness-D.thickness)<=.25&&h.visible===D.visible&&h.direction===D.direction&&h.startPanelId===D.startPanelId&&h.endPanelId===D.endPanelId||(B.current=D,d(M,D))},[a,U.left,U.right,d,M,oe]);m.useEffect(()=>{N()},[N]),m.useEffect(()=>{const g=k.current;if(!g)return;if(typeof ResizeObserver>"u"){N();return}const z=new ResizeObserver(()=>{N()});return z.observe(g),()=>{z.disconnect()}},[N]);const te=m.useMemo(()=>{const g=o?{...G,...o}:G;return oe?{...g,display:"none",pointerEvents:"none",visibility:"hidden"}:g},[G,oe,o]);return L.jsx("button",{type:"button",ref:k,className:ne,style:te,onPointerDown:Q,disabled:t,"aria-hidden":oe||void 0,"aria-label":`Resize ${H?"columns":"rows"} - Drag to collapse/expand panels`,"data-resize-handle-id":M,title:`ドラッグして${H?"列":"行"}をリサイズ、端まで移動して折りたたみ/展開`,children:i||L.jsx("div",{className:P,style:r,children:L.jsx("span",{className:_})})})}),Xn=e=>document.querySelector(`[data-panel-id="${e}"]`),Jn=e=>document.querySelector(`[data-panel-group-id="${e}"]`),Zn=e=>document.querySelector(`[data-resize-handle-id="${e}"]`);le.Panel=jn,le.PanelGroup=Un,le.PanelGroupContext=Ve,le.PanelResizeHandle=Yn,le.clamp=me,le.generatePanelId=pt,le.getConstraintInPixels=ie,le.getContainerSize=be,le.getPanelElement=Xn,le.getPanelGroupElement=Jn,le.getResizeHandleElement=Zn,le.loadLayout=gt,le.normalizeSizeConfig=ke,le.saveLayout=mt,le.usePanelControls=Kt,le.usePanelGroup=Be,le.useResizablePanels=xt,Object.defineProperty(le,Symbol.toStringTag,{value:"Module"})}));
22
+ <%s key={someKey} {...props} />`,H,f,z,f),ze[f+H]=!0)}if(f=null,O!==void 0&&(o(O),f=""+O),n(B)&&(o(B.key),f=""+B.key),"key"in B){O={};for(var h in B)h!=="key"&&(O[h]=B[h])}else O=B;return f&&u(O,typeof p=="function"?p.displayName||p.name||"Unknown":p),g(p,f,O,r(),fe,ge)}function c(p){d(p)?p._store&&(p._store.validated=1):typeof p=="object"&&p!==null&&p.$$typeof===L&&(p._payload.status==="fulfilled"?d(p._payload.value)&&p._payload.value._store&&(p._payload.value._store.validated=1):p._store&&(p._store.validated=1))}function d(p){return typeof p=="object"&&p!==null&&p.$$typeof===P}var S=x,P=Symbol.for("react.transitional.element"),y=Symbol.for("react.portal"),M=Symbol.for("react.fragment"),v=Symbol.for("react.strict_mode"),E=Symbol.for("react.profiler"),C=Symbol.for("react.consumer"),D=Symbol.for("react.context"),q=Symbol.for("react.forward_ref"),ee=Symbol.for("react.suspense"),K=Symbol.for("react.suspense_list"),w=Symbol.for("react.memo"),L=Symbol.for("react.lazy"),X=Symbol.for("react.activity"),ne=Symbol.for("react.client.reference"),W=S.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,V=Object.prototype.hasOwnProperty,ae=Array.isArray,k=console.createTask?console.createTask:function(){return null};S={react_stack_bottom_frame:function(p){return p()}};var T,J={},R=S.react_stack_bottom_frame.bind(S,s)(),me=k(i(s)),ze={};He.Fragment=M,He.jsx=function(p,B,O){var H=1e4>W.recentlyCreatedOwnerStacks++;return l(p,B,O,!1,H?Error("react-stack-top-frame"):R,H?k(i(p)):me)},He.jsxs=function(p,B,O){var H=1e4>W.recentlyCreatedOwnerStacks++;return l(p,B,O,!0,H?Error("react-stack-top-frame"):R,H?k(i(p)):me)}})()),He}var Rt;function lr(){return Rt||(Rt=1,process.env.NODE_ENV==="production"?Ke.exports=sr():Ke.exports=ar()),Ke.exports}var I=lr();const ot="-",cr=e=>{const t=ur(e),{conflictingClassGroups:o,conflictingClassGroupModifiers:i}=e;return{getClassGroupId:n=>{const u=n.split(ot);return u[0]===""&&u.length!==1&&u.shift(),At(u,t)||dr(n)},getConflictingClassGroupIds:(n,u)=>{const a=o[n]||[];return u&&i[n]?[...a,...i[n]]:a}}},At=(e,t)=>{if(e.length===0)return t.classGroupId;const o=e[0],i=t.nextPart.get(o),r=i?At(e.slice(1),i):void 0;if(r)return r;if(t.validators.length===0)return;const s=e.join(ot);return t.validators.find(({validator:n})=>n(s))?.classGroupId},_t=/^\[(.+)\]$/,dr=e=>{if(_t.test(e)){const t=_t.exec(e)[1],o=t?.substring(0,t.indexOf(":"));if(o)return"arbitrary.."+o}},ur=e=>{const{theme:t,classGroups:o}=e,i={nextPart:new Map,validators:[]};for(const r in o)it(o[r],i,r,t);return i},it=(e,t,o,i)=>{e.forEach(r=>{if(typeof r=="string"){const s=r===""?t:It(t,r);s.classGroupId=o;return}if(typeof r=="function"){if(fr(r)){it(r(i),t,o,i);return}t.validators.push({validator:r,classGroupId:o});return}Object.entries(r).forEach(([s,n])=>{it(n,It(t,s),o,i)})})},It=(e,t)=>{let o=e;return t.split(ot).forEach(i=>{o.nextPart.has(i)||o.nextPart.set(i,{nextPart:new Map,validators:[]}),o=o.nextPart.get(i)}),o},fr=e=>e.isThemeGetter,pr=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,o=new Map,i=new Map;const r=(s,n)=>{o.set(s,n),t++,t>e&&(t=0,i=o,o=new Map)};return{get(s){let n=o.get(s);if(n!==void 0)return n;if((n=i.get(s))!==void 0)return r(s,n),n},set(s,n){o.has(s)?o.set(s,n):r(s,n)}}},st="!",at=":",mr=at.length,gr=e=>{const{prefix:t,experimentalParseClassName:o}=e;let i=r=>{const s=[];let n=0,u=0,a=0,g;for(let P=0;P<r.length;P++){let y=r[P];if(n===0&&u===0){if(y===at){s.push(r.slice(a,P)),a=P+mr;continue}if(y==="/"){g=P;continue}}y==="["?n++:y==="]"?n--:y==="("?u++:y===")"&&u--}const l=s.length===0?r:r.substring(a),c=hr(l),d=c!==l,S=g&&g>a?g-a:void 0;return{modifiers:s,hasImportantModifier:d,baseClassName:c,maybePostfixModifierPosition:S}};if(t){const r=t+at,s=i;i=n=>n.startsWith(r)?s(n.substring(r.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:n,maybePostfixModifierPosition:void 0}}if(o){const r=i;i=s=>o({className:s,parseClassName:r})}return i},hr=e=>e.endsWith(st)?e.substring(0,e.length-1):e.startsWith(st)?e.substring(1):e,xr=e=>{const t=Object.fromEntries(e.orderSensitiveModifiers.map(i=>[i,!0]));return i=>{if(i.length<=1)return i;const r=[];let s=[];return i.forEach(n=>{n[0]==="["||t[n]?(r.push(...s.sort(),n),s=[]):s.push(n)}),r.push(...s.sort()),r}},zr=e=>({cache:pr(e.cacheSize),parseClassName:gr(e),sortModifiers:xr(e),...cr(e)}),Sr=/\s+/,br=(e,t)=>{const{parseClassName:o,getClassGroupId:i,getConflictingClassGroupIds:r,sortModifiers:s}=t,n=[],u=e.trim().split(Sr);let a="";for(let g=u.length-1;g>=0;g-=1){const l=u[g],{isExternal:c,modifiers:d,hasImportantModifier:S,baseClassName:P,maybePostfixModifierPosition:y}=o(l);if(c){a=l+(a.length>0?" "+a:a);continue}let M=!!y,v=i(M?P.substring(0,y):P);if(!v){if(!M){a=l+(a.length>0?" "+a:a);continue}if(v=i(P),!v){a=l+(a.length>0?" "+a:a);continue}M=!1}const E=s(d).join(":"),C=S?E+st:E,D=C+v;if(n.includes(D))continue;n.push(D);const q=r(v,M);for(let ee=0;ee<q.length;++ee){const K=q[ee];n.push(C+K)}a=l+(a.length>0?" "+a:a)}return a};function Pr(){let e=0,t,o,i="";for(;e<arguments.length;)(t=arguments[e++])&&(o=Bt(t))&&(i&&(i+=" "),i+=o);return i}const Bt=e=>{if(typeof e=="string")return e;let t,o="";for(let i=0;i<e.length;i++)e[i]&&(t=Bt(e[i]))&&(o&&(o+=" "),o+=t);return o};function yr(e,...t){let o,i,r,s=n;function n(a){const g=t.reduce((l,c)=>c(l),e());return o=zr(g),i=o.cache.get,r=o.cache.set,s=u,u(a)}function u(a){const g=i(a);if(g)return g;const l=br(a,o);return r(a,l),l}return function(){return s(Pr.apply(null,arguments))}}const xe=e=>{const t=o=>o[e]||[];return t.isThemeGetter=!0,t},Tt=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Nt=/^\((?:(\w[\w-]*):)?(.+)\)$/i,vr=/^\d+\/\d+$/,wr=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Cr=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Er=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,kr=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Mr=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Le=e=>vr.test(e),Q=e=>!!e&&!Number.isNaN(Number(e)),Me=e=>!!e&&Number.isInteger(Number(e)),lt=e=>e.endsWith("%")&&Q(e.slice(0,-1)),Ee=e=>wr.test(e),Rr=()=>!0,Ar=e=>Cr.test(e)&&!Er.test(e),Lt=()=>!1,_r=e=>kr.test(e),Ir=e=>Mr.test(e),Br=e=>!A(e)&&!_(e),Tr=e=>Fe(e,Gt,Lt),A=e=>Tt.test(e),Ie=e=>Fe(e,Ht,Ar),ct=e=>Fe(e,jr,Q),Ft=e=>Fe(e,jt,Lt),Nr=e=>Fe(e,Dt,Ir),qe=e=>Fe(e,Ut,_r),_=e=>Nt.test(e),Ue=e=>Oe(e,Ht),Lr=e=>Oe(e,Dr),Ot=e=>Oe(e,jt),Fr=e=>Oe(e,Gt),Or=e=>Oe(e,Dt),$e=e=>Oe(e,Ut,!0),Fe=(e,t,o)=>{const i=Tt.exec(e);return i?i[1]?t(i[1]):o(i[2]):!1},Oe=(e,t,o=!1)=>{const i=Nt.exec(e);return i?i[1]?t(i[1]):o:!1},jt=e=>e==="position"||e==="percentage",Dt=e=>e==="image"||e==="url",Gt=e=>e==="length"||e==="size"||e==="bg-size",Ht=e=>e==="length",jr=e=>e==="number",Dr=e=>e==="family-name",Ut=e=>e==="shadow",We=yr(()=>{const e=xe("color"),t=xe("font"),o=xe("text"),i=xe("font-weight"),r=xe("tracking"),s=xe("leading"),n=xe("breakpoint"),u=xe("container"),a=xe("spacing"),g=xe("radius"),l=xe("shadow"),c=xe("inset-shadow"),d=xe("text-shadow"),S=xe("drop-shadow"),P=xe("blur"),y=xe("perspective"),M=xe("aspect"),v=xe("ease"),E=xe("animate"),C=()=>["auto","avoid","all","avoid-page","page","left","right","column"],D=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],q=()=>[...D(),_,A],ee=()=>["auto","hidden","clip","visible","scroll"],K=()=>["auto","contain","none"],w=()=>[_,A,a],L=()=>[Le,"full","auto",...w()],X=()=>[Me,"none","subgrid",_,A],ne=()=>["auto",{span:["full",Me,_,A]},Me,_,A],W=()=>[Me,"auto",_,A],V=()=>["auto","min","max","fr",_,A],ae=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],k=()=>["start","end","center","stretch","center-safe","end-safe"],T=()=>["auto",...w()],J=()=>[Le,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...w()],R=()=>[e,_,A],me=()=>[...D(),Ot,Ft,{position:[_,A]}],ze=()=>["no-repeat",{repeat:["","x","y","space","round"]}],p=()=>["auto","cover","contain",Fr,Tr,{size:[_,A]}],B=()=>[lt,Ue,Ie],O=()=>["","none","full",g,_,A],H=()=>["",Q,Ue,Ie],fe=()=>["solid","dashed","dotted","double"],ge=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],f=()=>[Q,lt,Ot,Ft],z=()=>["","none",P,_,A],h=()=>["none",Q,_,A],b=()=>["none",Q,_,A],N=()=>[Q,_,A],Y=()=>[Le,"full",...w()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Ee],breakpoint:[Ee],color:[Rr],container:[Ee],"drop-shadow":[Ee],ease:["in","out","in-out"],font:[Br],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Ee],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Ee],shadow:[Ee],spacing:["px",Q],text:[Ee],"text-shadow":[Ee],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",Le,A,_,M]}],container:["container"],columns:[{columns:[Q,A,_,u]}],"break-after":[{"break-after":C()}],"break-before":[{"break-before":C()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:q()}],overflow:[{overflow:ee()}],"overflow-x":[{"overflow-x":ee()}],"overflow-y":[{"overflow-y":ee()}],overscroll:[{overscroll:K()}],"overscroll-x":[{"overscroll-x":K()}],"overscroll-y":[{"overscroll-y":K()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:L()}],"inset-x":[{"inset-x":L()}],"inset-y":[{"inset-y":L()}],start:[{start:L()}],end:[{end:L()}],top:[{top:L()}],right:[{right:L()}],bottom:[{bottom:L()}],left:[{left:L()}],visibility:["visible","invisible","collapse"],z:[{z:[Me,"auto",_,A]}],basis:[{basis:[Le,"full","auto",u,...w()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Q,Le,"auto","initial","none",A]}],grow:[{grow:["",Q,_,A]}],shrink:[{shrink:["",Q,_,A]}],order:[{order:[Me,"first","last","none",_,A]}],"grid-cols":[{"grid-cols":X()}],"col-start-end":[{col:ne()}],"col-start":[{"col-start":W()}],"col-end":[{"col-end":W()}],"grid-rows":[{"grid-rows":X()}],"row-start-end":[{row:ne()}],"row-start":[{"row-start":W()}],"row-end":[{"row-end":W()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":V()}],"auto-rows":[{"auto-rows":V()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...ae(),"normal"]}],"justify-items":[{"justify-items":[...k(),"normal"]}],"justify-self":[{"justify-self":["auto",...k()]}],"align-content":[{content:["normal",...ae()]}],"align-items":[{items:[...k(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...k(),{baseline:["","last"]}]}],"place-content":[{"place-content":ae()}],"place-items":[{"place-items":[...k(),"baseline"]}],"place-self":[{"place-self":["auto",...k()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:T()}],mx:[{mx:T()}],my:[{my:T()}],ms:[{ms:T()}],me:[{me:T()}],mt:[{mt:T()}],mr:[{mr:T()}],mb:[{mb:T()}],ml:[{ml:T()}],"space-x":[{"space-x":w()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":w()}],"space-y-reverse":["space-y-reverse"],size:[{size:J()}],w:[{w:[u,"screen",...J()]}],"min-w":[{"min-w":[u,"screen","none",...J()]}],"max-w":[{"max-w":[u,"screen","none","prose",{screen:[n]},...J()]}],h:[{h:["screen","lh",...J()]}],"min-h":[{"min-h":["screen","lh","none",...J()]}],"max-h":[{"max-h":["screen","lh",...J()]}],"font-size":[{text:["base",o,Ue,Ie]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[i,_,ct]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",lt,A]}],"font-family":[{font:[Lr,A,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[r,_,A]}],"line-clamp":[{"line-clamp":[Q,"none",_,ct]}],leading:[{leading:[s,...w()]}],"list-image":[{"list-image":["none",_,A]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",_,A]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:R()}],"text-color":[{text:R()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...fe(),"wavy"]}],"text-decoration-thickness":[{decoration:[Q,"from-font","auto",_,Ie]}],"text-decoration-color":[{decoration:R()}],"underline-offset":[{"underline-offset":[Q,"auto",_,A]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:w()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",_,A]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",_,A]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:me()}],"bg-repeat":[{bg:ze()}],"bg-size":[{bg:p()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Me,_,A],radial:["",_,A],conic:[Me,_,A]},Or,Nr]}],"bg-color":[{bg:R()}],"gradient-from-pos":[{from:B()}],"gradient-via-pos":[{via:B()}],"gradient-to-pos":[{to:B()}],"gradient-from":[{from:R()}],"gradient-via":[{via:R()}],"gradient-to":[{to:R()}],rounded:[{rounded:O()}],"rounded-s":[{"rounded-s":O()}],"rounded-e":[{"rounded-e":O()}],"rounded-t":[{"rounded-t":O()}],"rounded-r":[{"rounded-r":O()}],"rounded-b":[{"rounded-b":O()}],"rounded-l":[{"rounded-l":O()}],"rounded-ss":[{"rounded-ss":O()}],"rounded-se":[{"rounded-se":O()}],"rounded-ee":[{"rounded-ee":O()}],"rounded-es":[{"rounded-es":O()}],"rounded-tl":[{"rounded-tl":O()}],"rounded-tr":[{"rounded-tr":O()}],"rounded-br":[{"rounded-br":O()}],"rounded-bl":[{"rounded-bl":O()}],"border-w":[{border:H()}],"border-w-x":[{"border-x":H()}],"border-w-y":[{"border-y":H()}],"border-w-s":[{"border-s":H()}],"border-w-e":[{"border-e":H()}],"border-w-t":[{"border-t":H()}],"border-w-r":[{"border-r":H()}],"border-w-b":[{"border-b":H()}],"border-w-l":[{"border-l":H()}],"divide-x":[{"divide-x":H()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":H()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...fe(),"hidden","none"]}],"divide-style":[{divide:[...fe(),"hidden","none"]}],"border-color":[{border:R()}],"border-color-x":[{"border-x":R()}],"border-color-y":[{"border-y":R()}],"border-color-s":[{"border-s":R()}],"border-color-e":[{"border-e":R()}],"border-color-t":[{"border-t":R()}],"border-color-r":[{"border-r":R()}],"border-color-b":[{"border-b":R()}],"border-color-l":[{"border-l":R()}],"divide-color":[{divide:R()}],"outline-style":[{outline:[...fe(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Q,_,A]}],"outline-w":[{outline:["",Q,Ue,Ie]}],"outline-color":[{outline:R()}],shadow:[{shadow:["","none",l,$e,qe]}],"shadow-color":[{shadow:R()}],"inset-shadow":[{"inset-shadow":["none",c,$e,qe]}],"inset-shadow-color":[{"inset-shadow":R()}],"ring-w":[{ring:H()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:R()}],"ring-offset-w":[{"ring-offset":[Q,Ie]}],"ring-offset-color":[{"ring-offset":R()}],"inset-ring-w":[{"inset-ring":H()}],"inset-ring-color":[{"inset-ring":R()}],"text-shadow":[{"text-shadow":["none",d,$e,qe]}],"text-shadow-color":[{"text-shadow":R()}],opacity:[{opacity:[Q,_,A]}],"mix-blend":[{"mix-blend":[...ge(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":ge()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[Q]}],"mask-image-linear-from-pos":[{"mask-linear-from":f()}],"mask-image-linear-to-pos":[{"mask-linear-to":f()}],"mask-image-linear-from-color":[{"mask-linear-from":R()}],"mask-image-linear-to-color":[{"mask-linear-to":R()}],"mask-image-t-from-pos":[{"mask-t-from":f()}],"mask-image-t-to-pos":[{"mask-t-to":f()}],"mask-image-t-from-color":[{"mask-t-from":R()}],"mask-image-t-to-color":[{"mask-t-to":R()}],"mask-image-r-from-pos":[{"mask-r-from":f()}],"mask-image-r-to-pos":[{"mask-r-to":f()}],"mask-image-r-from-color":[{"mask-r-from":R()}],"mask-image-r-to-color":[{"mask-r-to":R()}],"mask-image-b-from-pos":[{"mask-b-from":f()}],"mask-image-b-to-pos":[{"mask-b-to":f()}],"mask-image-b-from-color":[{"mask-b-from":R()}],"mask-image-b-to-color":[{"mask-b-to":R()}],"mask-image-l-from-pos":[{"mask-l-from":f()}],"mask-image-l-to-pos":[{"mask-l-to":f()}],"mask-image-l-from-color":[{"mask-l-from":R()}],"mask-image-l-to-color":[{"mask-l-to":R()}],"mask-image-x-from-pos":[{"mask-x-from":f()}],"mask-image-x-to-pos":[{"mask-x-to":f()}],"mask-image-x-from-color":[{"mask-x-from":R()}],"mask-image-x-to-color":[{"mask-x-to":R()}],"mask-image-y-from-pos":[{"mask-y-from":f()}],"mask-image-y-to-pos":[{"mask-y-to":f()}],"mask-image-y-from-color":[{"mask-y-from":R()}],"mask-image-y-to-color":[{"mask-y-to":R()}],"mask-image-radial":[{"mask-radial":[_,A]}],"mask-image-radial-from-pos":[{"mask-radial-from":f()}],"mask-image-radial-to-pos":[{"mask-radial-to":f()}],"mask-image-radial-from-color":[{"mask-radial-from":R()}],"mask-image-radial-to-color":[{"mask-radial-to":R()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":D()}],"mask-image-conic-pos":[{"mask-conic":[Q]}],"mask-image-conic-from-pos":[{"mask-conic-from":f()}],"mask-image-conic-to-pos":[{"mask-conic-to":f()}],"mask-image-conic-from-color":[{"mask-conic-from":R()}],"mask-image-conic-to-color":[{"mask-conic-to":R()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:me()}],"mask-repeat":[{mask:ze()}],"mask-size":[{mask:p()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",_,A]}],filter:[{filter:["","none",_,A]}],blur:[{blur:z()}],brightness:[{brightness:[Q,_,A]}],contrast:[{contrast:[Q,_,A]}],"drop-shadow":[{"drop-shadow":["","none",S,$e,qe]}],"drop-shadow-color":[{"drop-shadow":R()}],grayscale:[{grayscale:["",Q,_,A]}],"hue-rotate":[{"hue-rotate":[Q,_,A]}],invert:[{invert:["",Q,_,A]}],saturate:[{saturate:[Q,_,A]}],sepia:[{sepia:["",Q,_,A]}],"backdrop-filter":[{"backdrop-filter":["","none",_,A]}],"backdrop-blur":[{"backdrop-blur":z()}],"backdrop-brightness":[{"backdrop-brightness":[Q,_,A]}],"backdrop-contrast":[{"backdrop-contrast":[Q,_,A]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Q,_,A]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Q,_,A]}],"backdrop-invert":[{"backdrop-invert":["",Q,_,A]}],"backdrop-opacity":[{"backdrop-opacity":[Q,_,A]}],"backdrop-saturate":[{"backdrop-saturate":[Q,_,A]}],"backdrop-sepia":[{"backdrop-sepia":["",Q,_,A]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",_,A]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Q,"initial",_,A]}],ease:[{ease:["linear","initial",v,_,A]}],delay:[{delay:[Q,_,A]}],animate:[{animate:["none",E,_,A]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[y,_,A]}],"perspective-origin":[{"perspective-origin":q()}],rotate:[{rotate:h()}],"rotate-x":[{"rotate-x":h()}],"rotate-y":[{"rotate-y":h()}],"rotate-z":[{"rotate-z":h()}],scale:[{scale:b()}],"scale-x":[{"scale-x":b()}],"scale-y":[{"scale-y":b()}],"scale-z":[{"scale-z":b()}],"scale-3d":["scale-3d"],skew:[{skew:N()}],"skew-x":[{"skew-x":N()}],"skew-y":[{"skew-y":N()}],transform:[{transform:[_,A,"","none","gpu","cpu"]}],"transform-origin":[{origin:q()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Y()}],"translate-x":[{"translate-x":Y()}],"translate-y":[{"translate-y":Y()}],"translate-z":[{"translate-z":Y()}],"translate-none":["translate-none"],accent:[{accent:R()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:R()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",_,A]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",_,A]}],fill:[{fill:["none",...R()]}],"stroke-w":[{stroke:[Q,Ue,Ie,ct]}],stroke:[{stroke:["none",...R()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}}),Gr=({panel:e,measuredPixelSize:t,measuredPercentageSize:o,containerAxisSize:i,containerLabel:r})=>{const s=e?.size,n=typeof s=="number"&&Number.isFinite(s)?`${s.toFixed(3)}px`:"-",u=e?.percentageSize!==void 0?`${e.percentageSize.toFixed(3)}%`:"-",a=Number.isFinite(t)?`${t.toFixed(3)}px`:"-",g=Number.isFinite(o)?`${o.toFixed(3)}%`:"-",l=Number.isFinite(i)?`${i.toFixed(3)}px`:"-",c=`${n} / ${u}`,d=`${a} / ${g}`,S=e?.sizeUnit==="pixels"?"Fixed":"Flexible",P=[S,`${r}: ${l}`,`size (state): ${c}`,`size (measured): ${d}`];return{stateValueDisplay:c,measuredValueDisplay:d,containerDisplay:l,headlineLabel:S,titleText:P.join(`
23
+ `)}},Hr=x.memo(({panel:e,measuredPixelSize:t,measuredPercentageSize:o,containerAxisSize:i,direction:r})=>{const s=r==="horizontal"?"container width":"container height",{stateValueDisplay:n,measuredValueDisplay:u,containerDisplay:a,headlineLabel:g,titleText:l}=x.useMemo(()=>Gr({panel:e,measuredPixelSize:t,measuredPercentageSize:o,containerAxisSize:i,containerLabel:s}),[e,t,o,i,s]),c={position:"absolute",top:"2px",right:"4px",backgroundColor:"rgba(30, 41, 59, 0.6)",color:"#fff",padding:"4px 8px",borderRadius:"6px",fontSize:"11px",fontFamily:"monospace",pointerEvents:"auto",zIndex:10,boxShadow:"0 2px 4px rgba(0,0,0,0.3)",border:"1px solid rgba(255,255,255,0.1)",maxWidth:"calc(100% - 12px)",minWidth:"60px",width:"fit-content",overflow:"hidden"},d={display:"flex",flexDirection:"column",gap:"1px",minWidth:"0",width:"100%"},S={display:"flex",justifyContent:"flex-start",alignItems:"center",gap:"6px",fontSize:"10px",color:"#ccc",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:"0",width:"100%"},P={display:"flex",justifyContent:"space-between",alignItems:"center",gap:"6px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:"0",width:"100%"},y={marginLeft:"auto",fontVariantNumeric:"tabular-nums",whiteSpace:"nowrap"};return I.jsx("div",{style:c,title:l,children:I.jsxs("div",{style:d,children:[I.jsx("div",{style:S,children:I.jsx("span",{children:g})}),I.jsxs("div",{style:P,children:[I.jsx("span",{children:s}),I.jsx("span",{style:y,children:a})]}),I.jsxs("div",{style:P,children:[I.jsx("span",{children:"size (state)"}),I.jsx("span",{style:y,children:n})]}),I.jsxs("div",{style:P,children:[I.jsx("span",{children:"size (measured)"}),I.jsx("span",{style:y,children:u})]})]})})}),Ur={both:{collapseFromStart:!0,collapseFromEnd:!0},start:{collapseFromStart:!0,collapseFromEnd:!1},end:{collapseFromStart:!1,collapseFromEnd:!0}},Wr=e=>{if(!e)return{collapseFromStart:!1,collapseFromEnd:!1};const t=Ur[e.from];if(!t)throw new Error("Invalid collapsible configuration: unsupported 'from' value");return t},Wt=({ref:e,setState:t,panelIdRef:o,label:i})=>r=>{if(!Number.isFinite(r))return;const s=r<0?0:r;e.current!==s&&(e.current=s,console.debug(`[resize-panels] commit ${i}`,{panelId:o.current,[i]:s}),t(s))},Vr=x.memo(({id:e,defaultSize:t={value:50,unit:"percentage"},minSize:o,maxSize:i,autoMinSize:r,className:s,style:n,children:u,order:a=0,collapsible:g,defaultCollapsed:l=!1,pixelAdjustPriority:c,flexAdjustPriority:d,contentOverflow:S="auto"})=>{const{direction:P,registerPanel:y,unregisterPanel:M,getPanel:v,showDebugInfo:E,isContainerReady:C,reportPanelMeasurement:D,containerSize:q}=Ye(),ee=x.useRef(null),K=x.useRef(e||yt()),w=x.useMemo(()=>Wr(g),[g]),L=w.collapseFromStart||w.collapseFromEnd,X=x.useMemo(()=>L?w.collapseFromStart?"start":w.collapseFromEnd?"end":null:null,[L,w.collapseFromStart,w.collapseFromEnd]),ne=L&&l,W=x.useMemo(()=>Je(t),[t]),V=W?.unit==="pixels",ae=V?void 0:W?.value,k=v(K.current),T=!!k?.collapsed,J=(k?.size??0)<=0,R=T||J,[me,ze]=x.useState(()=>V&&W?W.value:k?.size!==void 0?k.size:0),[p,B]=x.useState(()=>!V&&W?W.value:k?.percentageSize!==void 0?k.percentageSize:0),O=x.useRef(p);O.current=p;const H=x.useRef(me);H.current=me;const fe=x.useMemo(()=>Wt({ref:H,setState:ze,panelIdRef:K,label:"pixel"}),[]),ge=x.useMemo(()=>Wt({ref:O,setState:B,panelIdRef:K,label:"percentage"}),[]),f=x.useCallback(()=>{H.current!==0&&(H.current=0,ze(0)),O.current!==0&&(O.current=0,B(0))},[]);x.useEffect(()=>{e||console.warn("Panel component should have an explicit 'id' prop to avoid hydration issues. Auto-generated ID may cause SSR/client mismatch.")},[e]),x.useEffect(()=>{if(!C)return;let j=0;if(V&&W){let G=W.value;o&&typeof o=="object"&&o.unit==="pixels"&&(G=Math.max(G,o.value)),i&&typeof i=="object"&&i.unit==="pixels"&&(G=Math.min(G,i.value)),j=G}const F=ne,oe=F?X:null;l&&!L&&console.warn("Panel defaultCollapsed is ignored because collapsible configuration is not provided.");const pe=L&&F&&V?j:void 0,le=L?ae:void 0,ce=V?j:void 0,de={id:K.current,size:F?0:j,percentageSize:F?0:ae,preferredPercentageSize:ae,preferredPixelSize:ce,sizeUnit:W?.unit||"percentage",originalPixelSize:V?j:void 0,minSize:o,maxSize:i,collapseFromStart:w.collapseFromStart,collapseFromEnd:w.collapseFromEnd,collapsedByDirection:oe,collapsed:F,sizeBeforeCollapse:pe,percentageSizeBeforeCollapse:le,preferredPercentageSizeBeforeCollapse:L?ae:void 0,preferredPixelSizeBeforeCollapse:L?ce:void 0,pixelAdjustPriority:c,flexAdjustPriority:d,autoMinSize:r};return y(de),()=>{M(K.current),D(K.current,null)}},[r,w.collapseFromEnd,w.collapseFromStart,l,W,d,L,C,V,i,o,c,X,ae,y,D,ne,M]);const z=k?.size??0;x.useEffect(()=>{const j=ee.current;if(!j)return;const F=()=>{if(!k)return;const de=j.parentElement;if(!de)return;const m=j.getBoundingClientRect(),G=ke(de,"horizontal"),ie=ke(de,"vertical"),te=P==="horizontal"?m.width:m.height,he=P==="horizontal"?G.inner:ie.inner,we=rt(he);if(R){f();return}const Re=k.size??0,ye=Math.max(2,we*.5);if(Re>we&&te<ye){console.debug("[resize-panels] skip noisy measurement",{panelId:K.current,expectedPanelSize:Re,measured:te,noiseThreshold:ye});return}if(te>0){fe(te),he>0&&ge(te/he*100);return}k.size!==void 0&&fe(k.size),k.percentageSize!==void 0?ge(k.percentageSize):k.sizeUnit==="pixels"&&k.size!==void 0&&he>0&&ge(k.size/he*100)},oe=new ResizeObserver(()=>{F()});oe.observe(j),F();const pe=[],le=new MutationObserver(()=>{(()=>{if(!ee.current)return!1;const m=ee.current.getBoundingClientRect();return(P==="horizontal"?m.width:m.height)!==H.current})()&&setTimeout(F,0)}),ce=j.parentElement;return ce&&le.observe(ce,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style","class"]}),()=>{oe.disconnect(),le.disconnect();for(const de of pe)clearTimeout(de)}},[ge,fe,k,P,R,f]);const h=k?.size,b=k?.percentageSize,N=k?.sizeUnit;x.useEffect(()=>{if(k){if(R){f();return}if(h!==void 0&&fe(h),b!==void 0)ge(b);else if(N==="pixels"&&h!==void 0){const j=ee.current,F=j?.parentElement;if(j&&F){const{width:oe,height:pe}=j.getBoundingClientRect(),le=F.clientWidth,ce=F.clientHeight,de=P==="horizontal"?oe:pe,m=P==="horizontal"?le:ce;if(de>0&&m>0){const G=de/m*100;ge(G)}}}}},[ge,fe,k,b,h,N,P,R,f]),x.useEffect(()=>{D(K.current,{pixelSize:me,percentageSize:p})},[D,me,p]);const Y=()=>R?"0px":k?.originalPixelSize!==void 0?`${z}px`:k?.percentageSize!==void 0?`${k.percentageSize}%`:`${z}px`,re=k?.sizeUnit==="percentage"&&!k?.collapsed?1:0,U={flexBasis:Y(),flexGrow:0,flexShrink:re,overflow:"hidden",position:"relative",boxSizing:"border-box",minHeight:"0px",minWidth:"0px",...n};P==="horizontal"?(U.height="100%",U.minWidth=0):(U.width="100%",U.minHeight=0),R&&(P==="horizontal"?(U.width="0px",U.minWidth="0px"):(U.height="0px",U.minHeight="0px"),U.flexGrow=0,U.flexShrink=0,U.pointerEvents="none",U.visibility="hidden",T&&(U.display="none"));const $=P==="horizontal"?q.width:q.height,Z=x.useMemo(()=>({position:"absolute",inset:"0px",overflow:S,display:"flex",flexDirection:"column",width:"100%",height:"100%",minWidth:"0px",minHeight:"0px"}),[S]);return I.jsxs("div",{ref:ee,className:We("panel",s),style:U,"data-panel-id":K.current,"data-panel-size":z,"data-panel-size-unit":k?.sizeUnit||"percentage","data-panel-pixel-size":k?.sizeUnit==="pixels"?k?.originalPixelSize:null,"data-panel-order":a,"data-panel-collapsible":L,"data-panel-collapse-start":w.collapseFromStart,"data-panel-collapse-end":w.collapseFromEnd,"data-panel-collapsed":k?.collapsed,"aria-hidden":R,children:[I.jsx("div",{style:Z,children:u}),E&&I.jsx(Hr,{panel:k,measuredPixelSize:me,measuredPercentageSize:p,containerAxisSize:$,direction:P})]})}),Yr=e=>JSON.stringify(e.map(t=>({id:t.id,size:t.size,percentageSize:t.percentageSize??null,preferredPercentageSize:t.preferredPercentageSize??null,preferredPixelSize:t.preferredPixelSize??null,sizeUnit:t.sizeUnit,originalPixelSize:t.originalPixelSize??null,minSize:t.minSize??null,maxSize:t.maxSize??null,autoMinSize:t.autoMinSize??null,collapseFromStart:t.collapseFromStart,collapseFromEnd:t.collapseFromEnd,collapsedByDirection:t.collapsedByDirection??null,collapsed:t.collapsed??!1,sizeBeforeCollapse:t.sizeBeforeCollapse??null,preferredPercentageSizeBeforeCollapse:t.preferredPercentageSizeBeforeCollapse??null,preferredPixelSizeBeforeCollapse:t.preferredPixelSizeBeforeCollapse??null,measuredPixelSizeBeforeCollapse:t.measuredPixelSizeBeforeCollapse??null,pixelAdjustPriority:t.pixelAdjustPriority??null,flexAdjustPriority:t.flexAdjustPriority??null,measuredPixelSize:t.measuredPixelSize??null,measuredPercentageSize:t.measuredPercentageSize??null}))),Jr=e=>JSON.stringify(e.map(t=>({id:t.id,thickness:t.thickness,visible:t.visible,direction:t.direction,startPanelId:t.startPanelId??null,endPanelId:t.endPanelId??null}))),ve=(()=>{const e=new Set,t=new Map,o=new Set;let i=null,r=0,s=!0,n=[],u={ownerId:null,groups:n};const a=()=>{for(const v of e)v()},g=()=>{s=!0,a()},l=()=>{const v=i;if(v&&o.has(v))return!1;i=null;const E=o.values().next();return E.done||(i=E.value),v!==i};return{subscribe:v=>(e.add(v),()=>{e.delete(v)}),getSnapshot:()=>(l()&&(s=!0),s&&(n=Array.from(t.values()).sort((E,C)=>E.index-C.index).map(({serializedPanels:E,serializedHandles:C,...D})=>D),u={ownerId:i,groups:n},s=!1),u),getOwnerId:()=>(l()&&(s=!0),i),enableGroup:v=>{const E=o.size;o.add(v),o.size!==E&&l()&&g()},disableGroup:v=>{o.delete(v)&&l()&&g()},updateGroup:(v,E)=>{const C=t.get(v),D=C?.index??r++,q=Yr(E.panels),ee=Jr(E.handles),K=C?.displayName!==E.displayName,w=C?.direction!==E.direction,L=C?C.containerSize.width!==E.containerSize.width||C.containerSize.height!==E.containerSize.height:!0;let X=C?.serializedPanels!==q;if(!X&&C)if(C.panels.length!==E.panels.length)X=!0;else for(let k=0;k<E.panels.length;k+=1){const T=C.panels[k],J=E.panels[k];if(!(T&&J)){X=!0;break}if(T.id!==J.id||T.size!==J.size||T.percentageSize!==J.percentageSize||T.collapsed!==J.collapsed||T.measuredPixelSize!==J.measuredPixelSize||T.measuredPercentageSize!==J.measuredPercentageSize){X=!0;break}}let ne=C?.serializedHandles!==ee;if(!ne&&C)if(C.handles.length!==E.handles.length)ne=!0;else for(let k=0;k<E.handles.length;k+=1){const T=C.handles[k],J=E.handles[k];if(!(T&&J)){ne=!0;break}if(T.id!==J.id||T.thickness!==J.thickness||T.visible!==J.visible||T.direction!==J.direction||T.startPanelId!==J.startPanelId||T.endPanelId!==J.endPanelId){ne=!0;break}}if(!C&&E.panels.length===0&&E.handles.length===0||C&&!K&&!w&&!L&&!X&&!ne)return;const W=E.panels.map(k=>({...k})),V=E.handles.map(k=>({...k})),ae={...E.containerSize};t.set(v,{groupId:v,displayName:E.displayName,direction:E.direction,containerSize:ae,panels:W,handles:V,index:D,serializedPanels:q,serializedHandles:ee}),g()},removeGroup:v=>{const E=t.delete(v),C=o.delete(v),D=l();(E||C||D)&&g()}}})(),Xr=()=>x.useSyncExternalStore(ve.subscribe,ve.getOwnerId,ve.getOwnerId),Zr=()=>x.useSyncExternalStore(ve.subscribe,ve.getSnapshot,ve.getSnapshot),Qr=e=>{ve.enableGroup(e)},Vt=e=>{ve.disableGroup(e)},Kr=(e,t)=>{ve.updateGroup(e,t)},Yt=e=>{ve.removeGroup(e)};let Jt=0;const qr=()=>(Jt+=1,`panel-group-${Jt}`),je=(e,t)=>typeof e!="number"||!Number.isFinite(e)?"—":`${(e<0?0:e).toFixed(8)}${t}`,$r={position:"fixed",left:"50%",bottom:"20px",transform:"translate(-50%, 0)",zIndex:100,maxWidth:"min(90vw, 1120px)",width:"100%",borderRadius:"14px",backgroundColor:"rgba(15, 23, 42, 0.72)",color:"#e2e8f0",fontFamily:"monospace",fontSize:"11px",lineHeight:1.6,boxShadow:"0 22px 45px rgba(15,23,42,0.45)",border:"1px solid rgba(148, 163, 184, 0.22)",backdropFilter:"blur(10px)",WebkitBackdropFilter:"blur(10px)",pointerEvents:"auto",overflow:"auto"},en={display:"flex",justifyContent:"space-between",alignItems:"center",flexWrap:"wrap",gap:"12px"},tn={display:"flex",flexDirection:"column",gap:"4px"},rn={padding:"6px 10px",borderRadius:"9999px",border:"1px solid rgba(148, 163, 184, 0.35)",color:"#e2e8f0",fontWeight:600,fontSize:"10px",letterSpacing:"0.03em",textTransform:"uppercase",cursor:"pointer",transition:"background-color 0.18s ease, border-color 0.18s ease"},nn={padding:"10px 12px",borderRadius:"10px",backgroundColor:"rgba(30, 41, 59, 0.55)",border:"1px solid rgba(148, 163, 184, 0.18)",display:"flex",flexDirection:"column",gap:"10px"},on={padding:"8px 10px",borderRadius:"8px",backgroundColor:"rgba(15, 23, 42, 0.55)",border:"1px solid rgba(148, 163, 184, 0.16)",display:"flex",flexDirection:"column",gap:"4px"},Xt={display:"flex",justifyContent:"space-between",alignItems:"center",gap:"6px"},sn={display:"grid",gridTemplateColumns:"auto 1fr",gap:"2px 10px",color:"#e2e8f0"},an={padding:"2px 6px",borderRadius:"9999px",fontSize:"10px",textTransform:"uppercase"},ln=e=>{const t=e.reason==="minimum-exceeded",o=t?"Layout unavailable: minimum panel sizes exceed the container.":"Layout unavailable: panels cannot fill the container with their maximum sizes.",i=t?`Min required: ${Math.ceil(e.totalMinimumSize??0)}px | Available: ${Math.floor(e.availableContainerSize)}px`:`Max total: ${Math.floor(e.totalMaximumSize??0)}px | Needed: ${Math.floor(e.availableContainerSize)}px`;return{summary:o,detail:i}},cn=(e,t)=>{let o=!1;const i=e.map(r=>{const s=t[r.id];return!s||r.measuredPixelSize===s.pixelSize&&r.measuredPercentageSize===s.percentageSize?r:(o=!0,{...r,measuredPixelSize:s.pixelSize,measuredPercentageSize:s.percentageSize})});return o?i:e},Zt=(e,t,o)=>{const i=ke(e,"horizontal"),r=ke(e,"vertical"),s=e.getBoundingClientRect(),n=i.inner>0?i.inner:t??s.width,u=r.inner>0?r.inner:o??s.height;return{width:n,height:u}},dn=e=>{const{id:t,className:o,style:i,children:r,direction:s}=e,{groupRef:n,contextValue:u,groupStyle:a}=Et(e),[g,l]=x.useState({width:0,height:0}),c=u.layoutConstraintViolation,d=!!c,S=x.useMemo(()=>{if(!c)return null;const{summary:W,detail:V}=ln(c);return I.jsxs("div",{className:"flex w-full flex-1 flex-col items-center justify-center gap-2 rounded-lg border border-slate-300 border-dashed bg-slate-100/70 px-6 py-8 text-center text-slate-600 text-sm dark:border-slate-600 dark:bg-slate-800/50 dark:text-slate-200","data-panel-group-placeholder":"constraint-violation",children:[I.jsx("span",{children:W}),I.jsx("span",{className:"text-slate-500 text-xs dark:text-slate-400",children:V})]})},[c]),y=x.useRef(t??qr()).current,M=t??y,v=u.showDebugInfo&&u.panels.length>0,E=v?u.panels:[],C=v?u.panelMeasurements:{},D=x.useMemo(()=>{if(!v)return[];const W=Object.values(u.handleMeasurements);return W.length<=1?W:W.slice().sort((V,ae)=>V.id.localeCompare(ae.id))},[u.handleMeasurements,v]),q=u.containerSize,ee=g.width>0?g.width:q.width,K=g.height>0?g.height:q.height,w=Xr(),L=v&&w===y;x.useLayoutEffect(()=>{if(!v){l({width:0,height:0});return}if(typeof window>"u"||typeof ResizeObserver>"u")return;const W=n.current;if(!W)return;const V=k=>{l(T=>T.width===k.width&&T.height===k.height?T:k)},ae=new ResizeObserver(k=>{for(const T of k){if(T.target!==W)continue;const J=Zt(W,T.contentRect.width,T.contentRect.height);V(J)}});return ae.observe(W),V(Zt(W)),()=>{ae.disconnect()}},[n,v]);const X=x.useMemo(()=>cn(E,C),[E,C]);x.useEffect(()=>{if(!v){Vt(y),Yt(y);return}return Qr(y),()=>{Vt(y),Yt(y)}},[v,y]),x.useEffect(()=>{v&&Kr(y,{displayName:M,direction:s,containerSize:{width:ee,height:K},panels:X,handles:D})},[v,y,M,s,ee,K,X,D]);const ne=x.useMemo(()=>{const W={...a,...i};return W.position||(W.position="relative"),W},[a,i]);return I.jsxs(tt.Provider,{value:u,children:[I.jsxs("div",{ref:n,className:We("panel-group",s==="horizontal"?"flex-row":"flex-col",o),style:ne,"data-panel-group-id":t,"data-panel-group-direction":s,children:[r,d&&S?I.jsx("div",{className:"pointer-events-auto",style:{position:"absolute",inset:0,zIndex:40,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",backgroundColor:"rgba(248, 250, 252, 0.82)",backdropFilter:"blur(2px)"},children:S}):null]}),L&&I.jsx(un,{})]})},un=()=>{const t=Zr().groups,[o,i]=x.useState(!0);if(t.length===0||typeof document>"u")return null;const r=t.reduce((a,g)=>a+g.panels.length,0),s=t.reduce((a,g)=>a+(g.handles?.length??0),0),n=()=>i(a=>!a),u=I.jsxs("div",{style:{...$r,padding:o?"10px 18px":"14px 18px",maxHeight:o?"52px":"min(65vh, 520px)",transition:"max-height 0.24s ease, padding 0.24s ease"},children:[I.jsxs("div",{style:{...en,marginBottom:o?0:"12px"},children:[I.jsxs("div",{style:tn,children:[I.jsx("span",{style:{fontWeight:700,fontSize:"12px",letterSpacing:"0.03em"},children:"Panel Overview"}),I.jsxs("span",{style:{color:"#cbd5f5"},children:["groups: ",t.length," / panels: ",r," / resizers: ",s]})]}),I.jsx("button",{type:"button",onClick:n,style:{...rn,backgroundColor:o?"rgba(59, 130, 246, 0.2)":"rgba(71, 85, 105, 0.45)"},title:o?"Panel Overview を開く":"Panel Overview を閉じる",children:o?"開く":"閉じる"})]}),!o&&I.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"12px",maxHeight:"45vh",overflowY:"auto",paddingRight:"6px"},children:t.map((a,g)=>{const l=a.direction==="horizontal"?a.containerSize.width:a.containerSize.height;return I.jsxs("div",{style:nn,children:[I.jsxs("div",{style:{...Xt,flexWrap:"wrap",gap:"10px",color:"#dbeafe"},children:[I.jsxs("span",{style:{fontWeight:600,fontSize:"11px",letterSpacing:"0.02em",textTransform:"uppercase"},children:["group ",g+1,": ",a.displayName]}),I.jsxs("span",{children:["direction: ",a.direction," / container: ",je(a.containerSize.width,"px")," × ",je(a.containerSize.height,"px")]})]}),I.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(220px, 1fr))",gap:"10px"},children:a.panels.map((c,d)=>{const S=c.measuredPixelSize??c.size,P=c.size,y=je(P,"px"),M=c.percentageSize??(l>0?c.size/l*100:void 0),v=c.measuredPercentageSize!==void 0?c.measuredPercentageSize:l>0?S/l*100:void 0,E=c.collapsed||S<=ft,C=c.collapsed?"collapsed":E?"hidden":"visible",D=je(M,"%"),q=je(v,"%"),ee=je(S,"px");return I.jsxs("div",{style:on,children:[I.jsxs("div",{style:Xt,children:[I.jsx("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis"},children:c.id}),I.jsx("span",{style:{...an,backgroundColor:c.collapsed?"rgba(251, 113, 133, 0.25)":E?"rgba(250, 204, 21, 0.25)":"rgba(74, 222, 128, 0.25)",color:c.collapsed?"#fecdd3":E?"#fef08a":"#bbf7d0"},children:C})]}),I.jsxs("div",{style:sn,children:[I.jsx("span",{children:"size (state):"}),I.jsx("span",{children:y}),I.jsx("span",{children:"size (measured):"}),I.jsx("span",{children:ee}),I.jsx("span",{children:"percentage (state):"}),I.jsx("span",{children:D}),I.jsx("span",{children:"percentage (measured):"}),I.jsx("span",{children:q}),I.jsx("span",{children:"unit:"}),I.jsx("span",{children:c.sizeUnit}),I.jsx("span",{children:"min:"}),I.jsx("span",{children:c.minSize!==void 0?JSON.stringify(c.minSize):"—"}),I.jsx("span",{children:"auto min:"}),I.jsx("span",{children:c.autoMinSize!==void 0?JSON.stringify(c.autoMinSize):"—"}),I.jsx("span",{children:"max:"}),I.jsx("span",{children:c.maxSize!==void 0?JSON.stringify(c.maxSize):"—"}),I.jsx("span",{children:"priority:"}),I.jsx("span",{children:c.pixelAdjustPriority??"—"}),I.jsx("span",{children:"flex priority:"}),I.jsx("span",{children:c.flexAdjustPriority??"—"})]})]},c.id||d)})})]},a.groupId)})})]});return Kt.createPortal(u,document.body)},fn=x.memo(({id:e,disabled:t=!1,className:o,style:i,children:r,onDragging:s})=>{const{direction:n,resizePanels:u,getPanel:a,collapsePanel:g,expandPanel:l,panels:c,reportHandleMeasurement:d,containerSize:S,layoutConstraintViolation:P}=Ye(),[y,M]=x.useState(!1),v=x.useRef(null),E=x.useRef(null),C=x.useRef(""),D=x.useRef(""),[q,ee]=x.useState({left:null,right:null}),K=x.useRef(e??nr()),w=x.useRef(null),L=e??K.current,X=!!P,ne=t||X;x.useEffect(()=>{if(v.current){const h=v.current.parentElement;if(h){E.current=h;const b=Array.from(h.children),N=v.current,Y=b.indexOf(N);if(Y>0&&Y<b.length-1){let re=null,U=null;for(let $=Y-1;$>=0;$-=1){const Z=b[$];if(Z.dataset.panelId){re=Z;break}}for(let $=Y+1;$<b.length;$+=1){const Z=b[$];if(Z.dataset.panelId){U=Z;break}}C.current=re?.dataset.panelId||"",D.current=U?.dataset.panelId||"",ee({left:C.current||null,right:D.current||null})}}}},[]),x.useEffect(()=>{if(L===K.current)return;const h=K.current;K.current=L,w.current=null,h!==L&&d(h,null)},[d,L]),x.useEffect(()=>{const h=K.current;return()=>{d(h,null)}},[d]);const W=x.useCallback(h=>{if(ne||!E.current)return;h.preventDefault(),h.stopPropagation();const b=E.current,{inner:N}=ke(b,n),Y={x:h.clientX,y:h.clientY},re=a(C.current),U=a(D.current);if(!(re&&U))return;const $=re.size,Z=U.size;let j=0;const F=$t;M(!0),s?.(!0),h.currentTarget.setPointerCapture(h.pointerId);const oe=le=>{if(!v.current)return;le.preventDefault(),le.stopPropagation();const ce=performance.now();if(ce-j<F)return;j=ce;const de=n==="horizontal"?le.clientX-Y.x:le.clientY-Y.y;if(de===0)return;const m=$+de,G=Z-de,ie=a(C.current),te=a(D.current);if(ie&&te&&C.current&&D.current){const he=se(ie.minSize,0,N),we=se(te.minSize,0,N),Re=he,ye=we,Be=Math.min(N*mt,gt),Te=Math.min(N*er,tr),Ce=te.collapseFromStart,Ne=te.collapsedByDirection??"start";if(Ce&&!te.collapsed&&G<=Math.max(we*.3,Be)){g(D.current,"start");return}const hn=ie.collapseFromEnd,xn=ie.collapsedByDirection??"end";if(hn&&!ie.collapsed&&m<=Math.max(he*.3,Be)){g(C.current,"end");return}if(te.collapsed&&G>Math.max(we*.3,Te)){l(D.current,Ne,G);return}if(ie.collapsed&&m>Math.max(he*.3,Te)){l(C.current,xn,m);return}if(N>0){const Qt=ie.size+te.size,et=rt(N);let dt=!1;if(Re<=et&&m<=et&&$!==0){const Ve=Math.max(0,Qt-0);Ve>=ye&&(u(C.current,D.current,0,Ve),dt=!0)}else if(ye<=et&&G<=et&&Z!==0){const Ve=Math.max(0,Qt-0);Ve>=Re&&(u(C.current,D.current,Ve,0),dt=!0)}if(dt)return}if(ie.collapsed||te.collapsed)return;u(C.current,D.current,m,G)}},pe=()=>{M(!1),s?.(!1),document.removeEventListener("pointermove",oe),document.removeEventListener("pointerup",pe)};document.addEventListener("pointermove",oe),document.addEventListener("pointerup",pe)},[ne,n,u,a,g,l,s]),V=n==="horizontal",k=We("group absolute z-20 flex select-none items-center justify-center border-none bg-transparent transition-colors duration-150 overflow-visible",V?"cursor-col-resize":"cursor-row-resize",V?"h-full":"w-full",!ne&&"hover:bg-gray-200/70 dark:hover:bg-gray-700/70",!ne&&"active:bg-blue-300/60 dark:active:bg-blue-700/60",y&&"bg-blue-200/80 dark:bg-blue-800/60",ne&&"cursor-not-allowed opacity-50","focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-opacity-50",o),T=x.useMemo(()=>{const h=b=>{if(!b)return-1;for(let N=0;N<c.length;N+=1)if(c[N].id===b)return N;return-1};return{left:h(q.left),right:h(q.right)}},[q.left,q.right,c]),J=V?S.width:S.height,R=x.useMemo(()=>{const h=(b,N)=>{if(b>N)return 0;let Y=0;for(let re=b;re<=N;re+=1){const U=c[re];if(!U)continue;const $=U.size??0,Z=Math.max(0,$);Y+=U.collapsed?0:Z}return Y};return T.left>=0?h(0,T.left):T.right>0?h(0,T.right-1):0},[T.left,T.right,c]),me=x.useMemo(()=>!Number.isFinite(R)||R<0?0:J>0&&R>J?J:R,[R,J]),ze=x.useMemo(()=>{const h={position:"absolute",zIndex:20,touchAction:"none"};return V?(h.top=0,h.left=`${me}px`,h.transform="translateX(-50%)",h.width=`${pt}px`,h.height="100%"):(h.left=0,h.top=`${me}px`,h.transform="translateY(-50%)",h.height=`${pt}px`,h.width="100%"),h},[me,V]),p=x.useMemo(()=>{const h=rt(J),b=F=>{if(F<0||F>=c.length)return!1;const oe=c[F];return oe?oe.collapsed?!0:oe.size<=h:!1},N=(F,oe)=>{if(!b(F))return 0;let pe=0;for(let le=F;le>=0&&le<c.length&&b(le);le+=oe)pe+=1;return pe},Y=T.left,re=T.right,U=Y>=0?N(Y,-1):0,$=re>=0?N(re,1):0;return{groupSize:U+$+1,overlapIndex:U}},[T.left,T.right,c,J]),B=x.useMemo(()=>{if(X)return!0;if(p.groupSize<=1)return!1;const h=p.groupSize-1;return p.overlapIndex>0&&p.overlapIndex<h},[p,X]),O=x.useMemo(()=>{if(p.groupSize<=1||B)return 0;const h=p.groupSize>1?2:1;if(h===1)return 0;const b=p.overlapIndex===0?0:h-1,N=(h-1)/2;return(b-N)*qt},[p,B]),H=x.useMemo(()=>{if(B)return{display:"none"};if(O!==0)return V?{transform:`translateX(${O}px)`}:{transform:`translateY(${O}px)`}},[O,V,B]),fe=We("flex items-center justify-center rounded-full bg-white text-slate-700 ring-1 ring-inset ring-white/80 backdrop-blur-sm transition-colors duration-150 shadow-[0_0_0_1px_rgba(255,255,255,0.85),0_1px_3px_rgba(15,23,42,0.18)]","dark:bg-slate-800/95 dark:text-slate-200 dark:ring-slate-500/60 dark:shadow-[0_0_0_1px_rgba(148,163,184,0.45),0_1px_3px_rgba(2,6,23,0.55)]",V?"h-12 w-[6px] px-[2px]":"h-[6px] w-20 py-[2px]",y&&"bg-blue-200/80 ring-blue-300 shadow-[0_0_0_1px_rgba(191,219,254,0.65),0_1px_4px_rgba(59,130,246,0.45)] dark:bg-blue-900/70 dark:ring-blue-400 dark:shadow-[0_0_0_1px_rgba(147,197,253,0.5),0_1px_4px_rgba(59,130,246,0.55)]"),ge=We("rounded-full bg-slate-600 transition-colors duration-150 shadow-[0_0_0_1px_rgba(255,255,255,0.9)] dark:bg-slate-200 dark:shadow-[0_0_0_1px_rgba(15,23,42,0.55)]",V?"h-8 w-[2px]":"h-[2px] w-16",y&&"bg-blue-500 dark:bg-blue-300",!ne&&"group-hover:bg-slate-700 dark:group-hover:bg-slate-100"),f=x.useCallback(()=>{const h=v.current;if(!h)return;let b=0;if(!B){const re=n==="horizontal"?h.offsetWidth:h.offsetHeight;let U=0,$=0;if(typeof window<"u"){const j=window.getComputedStyle(h);n==="horizontal"?(U=Number.parseFloat(j.marginLeft||"0"),$=Number.parseFloat(j.marginRight||"0")):(U=Number.parseFloat(j.marginTop||"0"),$=Number.parseFloat(j.marginBottom||"0"))}b=[re,U,$].reduce((j,F)=>Number.isFinite(F)?j+F:j,0)}(!Number.isFinite(b)||b<0)&&(b=0);const N={id:L,thickness:b,direction:n,visible:!B&&b>rr,startPanelId:q.left,endPanelId:q.right},Y=w.current;Y&&Math.abs(Y.thickness-N.thickness)<=.25&&Y.visible===N.visible&&Y.direction===N.direction&&Y.startPanelId===N.startPanelId&&Y.endPanelId===N.endPanelId||(w.current=N,d(L,N))},[n,q.left,q.right,d,L,B]);x.useEffect(()=>{f()},[f]),x.useEffect(()=>{const h=v.current;if(!h)return;if(typeof ResizeObserver>"u"){f();return}const b=new ResizeObserver(()=>{f()});return b.observe(h),()=>{b.disconnect()}},[f]);const z=x.useMemo(()=>{const h=i?{...ze,...i}:ze;return B?{...h,display:"none",pointerEvents:"none",visibility:"hidden"}:h},[ze,B,i]);return I.jsx("button",{type:"button",ref:v,className:k,style:z,onPointerDown:W,disabled:ne,"aria-hidden":B||void 0,"aria-label":`Resize ${V?"columns":"rows"} - Drag to collapse/expand panels`,"data-resize-handle-id":L,title:`ドラッグして${V?"列":"行"}をリサイズ、端まで移動して折りたたみ/展開`,children:r||I.jsx("div",{className:fe,style:H,children:I.jsx("span",{className:ge})})})}),pn=e=>document.querySelector(`[data-panel-id="${e}"]`),mn=e=>document.querySelector(`[data-panel-group-id="${e}"]`),gn=e=>document.querySelector(`[data-resize-handle-id="${e}"]`);ue.Panel=Vr,ue.PanelGroup=dn,ue.PanelGroupContext=tt,ue.PanelResizeHandle=fn,ue.clamp=Se,ue.generatePanelId=yt,ue.getConstraintInPixels=se,ue.getContainerSize=ke,ue.getPanelElement=pn,ue.getPanelGroupElement=mn,ue.getResizeHandleElement=gn,ue.loadLayout=wt,ue.normalizeSizeConfig=Je,ue.saveLayout=vt,ue.usePanelControls=ir,ue.usePanelGroup=Ye,ue.useResizablePanels=Et,Object.defineProperty(ue,Symbol.toStringTag,{value:"Module"})}));
package/dist/reducer.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { PanelLayoutData } from './types';
1
+ import { PanelCollapseDirection, PanelLayoutData } from './types';
2
2
 
3
3
  export type PanelAction = {
4
4
  type: "REGISTER_PANEL";
@@ -24,10 +24,12 @@ export type PanelAction = {
24
24
  type: "COLLAPSE_PANEL";
25
25
  id: string;
26
26
  containerSize: number;
27
+ from: PanelCollapseDirection;
27
28
  } | {
28
29
  type: "EXPAND_PANEL";
29
30
  id: string;
30
31
  containerSize: number;
32
+ from: PanelCollapseDirection;
31
33
  targetSize?: number;
32
34
  };
33
35
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../src/reducer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAkC,KAAK,eAAe,EAAE,MAAM,SAAS,CAAA;AAwkB9E,MAAM,MAAM,WAAW,GACjB;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,eAAe,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,GACvH;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,eAAe,EAAE,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,YAAY,GAAG,UAAU,CAAA;CAAE,GAC1F;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAiCtF;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,eAAe,EAAE,EAAE,QAAQ,WAAW,KAAG,eAAe,EAmT3F,CAAA"}
1
+ {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../src/reducer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AA8rBtE,MAAM,MAAM,WAAW,GACjB;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,eAAe,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,GACvH;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,eAAe,EAAE,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,YAAY,GAAG,UAAU,CAAA;CAAE,GAC1F;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,sBAAsB,CAAA;CAAE,GAC3F;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,sBAAsB,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAiCpH;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,eAAe,EAAE,EAAE,QAAQ,WAAW,KAAG,eAAe,EAwe3F,CAAA"}