@womp/kookie-ui 0.32.0 → 0.34.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.
Files changed (136) hide show
  1. package/components.css +288 -35
  2. package/dist/cjs/components/_internal/pane-chrome.js +1 -1
  3. package/dist/cjs/components/_internal/pane-chrome.js.map +2 -2
  4. package/dist/cjs/components/_internal/shell-bottom.d.ts +7 -2
  5. package/dist/cjs/components/_internal/shell-bottom.d.ts.map +1 -1
  6. package/dist/cjs/components/_internal/shell-bottom.js +1 -1
  7. package/dist/cjs/components/_internal/shell-bottom.js.map +3 -3
  8. package/dist/cjs/components/_internal/shell-inspector.d.ts +7 -2
  9. package/dist/cjs/components/_internal/shell-inspector.d.ts.map +1 -1
  10. package/dist/cjs/components/_internal/shell-inspector.js +1 -1
  11. package/dist/cjs/components/_internal/shell-inspector.js.map +3 -3
  12. package/dist/cjs/components/_internal/shell-pane.js +1 -1
  13. package/dist/cjs/components/_internal/shell-pane.js.map +2 -2
  14. package/dist/cjs/components/_internal/shell-sidebar.d.ts +7 -2
  15. package/dist/cjs/components/_internal/shell-sidebar.d.ts.map +1 -1
  16. package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
  17. package/dist/cjs/components/_internal/shell-sidebar.js.map +3 -3
  18. package/dist/cjs/components/_internal/shell-store.d.ts +6 -6
  19. package/dist/cjs/components/_internal/shell-store.d.ts.map +1 -1
  20. package/dist/cjs/components/_internal/shell-store.js +1 -1
  21. package/dist/cjs/components/_internal/shell-store.js.map +3 -3
  22. package/dist/cjs/components/command.d.ts +133 -0
  23. package/dist/cjs/components/command.d.ts.map +1 -0
  24. package/dist/cjs/components/command.js +3 -0
  25. package/dist/cjs/components/command.js.map +7 -0
  26. package/dist/cjs/components/index.d.ts +1 -0
  27. package/dist/cjs/components/index.d.ts.map +1 -1
  28. package/dist/cjs/components/index.js +2 -2
  29. package/dist/cjs/components/index.js.map +4 -4
  30. package/dist/cjs/components/navigator.js +1 -1
  31. package/dist/cjs/components/navigator.js.map +2 -2
  32. package/dist/cjs/components/shell.context.js +1 -1
  33. package/dist/cjs/components/shell.context.js.map +2 -2
  34. package/dist/cjs/components/shell.d.ts +25 -7
  35. package/dist/cjs/components/shell.d.ts.map +1 -1
  36. package/dist/cjs/components/shell.hooks.js +1 -1
  37. package/dist/cjs/components/shell.hooks.js.map +2 -2
  38. package/dist/cjs/components/shell.js +1 -1
  39. package/dist/cjs/components/shell.js.map +3 -3
  40. package/dist/cjs/components/toolbar.js +1 -1
  41. package/dist/cjs/components/toolbar.js.map +2 -2
  42. package/dist/cjs/index.js +5 -5
  43. package/dist/cjs/index.js.map +4 -4
  44. package/dist/esm/chunk-5BXCPANF.js +3 -0
  45. package/dist/esm/{chunk-GHWEXMF6.js.map → chunk-5BXCPANF.js.map} +3 -3
  46. package/dist/esm/{chunk-K35JUIUT.js → chunk-API4DAPY.js} +2 -2
  47. package/dist/esm/{chunk-ZG2XQUOH.js → chunk-B447PNRD.js} +2 -2
  48. package/dist/esm/{chunk-QDAM2I6O.js → chunk-BR6Z2CAE.js} +2 -2
  49. package/dist/esm/{chunk-W35ZKQMQ.js → chunk-CAM66IXC.js} +2 -2
  50. package/dist/esm/chunk-GZPB6MRQ.js +3 -0
  51. package/dist/esm/chunk-GZPB6MRQ.js.map +7 -0
  52. package/dist/esm/{chunk-4G3FJUER.js → chunk-INGT6DB6.js} +2 -2
  53. package/dist/esm/{chunk-4ZHBNYXM.js → chunk-J6B7UCZN.js} +2 -2
  54. package/dist/esm/chunk-KDJM4NQQ.js +3 -0
  55. package/dist/esm/chunk-KDJM4NQQ.js.map +7 -0
  56. package/dist/esm/{chunk-LTUW36HM.js → chunk-KGCGT4MJ.js} +2 -2
  57. package/dist/esm/chunk-NO2JCJWI.js +3 -0
  58. package/dist/esm/chunk-NO2JCJWI.js.map +7 -0
  59. package/dist/esm/{chunk-6WHKGVWY.js → chunk-NZJRXZYX.js} +2 -2
  60. package/dist/esm/{chunk-NFSW36RG.js → chunk-ODHCDJ3Y.js} +2 -2
  61. package/dist/esm/chunk-SHKPQ3RI.js +2 -0
  62. package/dist/esm/chunk-UMQOTGJC.js +3 -0
  63. package/dist/esm/chunk-UMQOTGJC.js.map +7 -0
  64. package/dist/esm/chunk-XD676L6S.js +3 -0
  65. package/dist/esm/chunk-XD676L6S.js.map +7 -0
  66. package/dist/esm/{chunk-6SGJWML7.js → chunk-XKYPJTRN.js} +2 -2
  67. package/dist/esm/components/_internal/pane-chrome.js +1 -1
  68. package/dist/esm/components/_internal/shell-bottom.d.ts +7 -2
  69. package/dist/esm/components/_internal/shell-bottom.d.ts.map +1 -1
  70. package/dist/esm/components/_internal/shell-bottom.js +1 -1
  71. package/dist/esm/components/_internal/shell-inspector.d.ts +7 -2
  72. package/dist/esm/components/_internal/shell-inspector.d.ts.map +1 -1
  73. package/dist/esm/components/_internal/shell-inspector.js +1 -1
  74. package/dist/esm/components/_internal/shell-pane.js +1 -1
  75. package/dist/esm/components/_internal/shell-sidebar.d.ts +7 -2
  76. package/dist/esm/components/_internal/shell-sidebar.d.ts.map +1 -1
  77. package/dist/esm/components/_internal/shell-sidebar.js +1 -1
  78. package/dist/esm/components/_internal/shell-store.d.ts +6 -6
  79. package/dist/esm/components/_internal/shell-store.d.ts.map +1 -1
  80. package/dist/esm/components/_internal/shell-store.js +1 -1
  81. package/dist/esm/components/alert-dialog.js +1 -1
  82. package/dist/esm/components/command.d.ts +133 -0
  83. package/dist/esm/components/command.d.ts.map +1 -0
  84. package/dist/esm/components/command.js +3 -0
  85. package/dist/esm/components/command.js.map +7 -0
  86. package/dist/esm/components/dialog.js +1 -1
  87. package/dist/esm/components/index.d.ts +1 -0
  88. package/dist/esm/components/index.d.ts.map +1 -1
  89. package/dist/esm/components/index.js +1 -1
  90. package/dist/esm/components/navigator.js +1 -1
  91. package/dist/esm/components/sheet.js +1 -1
  92. package/dist/esm/components/shell.context.js +1 -1
  93. package/dist/esm/components/shell.d.ts +25 -7
  94. package/dist/esm/components/shell.d.ts.map +1 -1
  95. package/dist/esm/components/shell.hooks.js +1 -1
  96. package/dist/esm/components/shell.js +1 -1
  97. package/dist/esm/components/sidebar.js +1 -1
  98. package/dist/esm/components/toolbar.js +1 -1
  99. package/dist/esm/hooks/index.js +1 -1
  100. package/dist/esm/index.js +1 -1
  101. package/package.json +1 -1
  102. package/src/components/_internal/shell-bottom.tsx +11 -6
  103. package/src/components/_internal/shell-inspector.tsx +11 -6
  104. package/src/components/_internal/shell-sidebar.tsx +11 -6
  105. package/src/components/_internal/shell-store.tsx +13 -13
  106. package/src/components/command.css +197 -0
  107. package/src/components/command.tsx +432 -0
  108. package/src/components/index.css +1 -0
  109. package/src/components/index.tsx +24 -0
  110. package/src/components/shell.css +133 -47
  111. package/src/components/shell.tsx +50 -32
  112. package/src/styles/tokens/color.css +2 -0
  113. package/styles.css +289 -35
  114. package/tokens/base.css +1 -0
  115. package/tokens.css +1 -0
  116. package/dist/esm/chunk-4B3S2DM7.js +0 -3
  117. package/dist/esm/chunk-4B3S2DM7.js.map +0 -7
  118. package/dist/esm/chunk-AKMRPGNP.js +0 -3
  119. package/dist/esm/chunk-AKMRPGNP.js.map +0 -7
  120. package/dist/esm/chunk-GHWEXMF6.js +0 -3
  121. package/dist/esm/chunk-RSG4XWHU.js +0 -2
  122. package/dist/esm/chunk-ZBSGH74F.js +0 -3
  123. package/dist/esm/chunk-ZBSGH74F.js.map +0 -7
  124. package/dist/esm/chunk-ZHXEEOGI.js +0 -3
  125. package/dist/esm/chunk-ZHXEEOGI.js.map +0 -7
  126. /package/dist/esm/{chunk-K35JUIUT.js.map → chunk-API4DAPY.js.map} +0 -0
  127. /package/dist/esm/{chunk-ZG2XQUOH.js.map → chunk-B447PNRD.js.map} +0 -0
  128. /package/dist/esm/{chunk-QDAM2I6O.js.map → chunk-BR6Z2CAE.js.map} +0 -0
  129. /package/dist/esm/{chunk-W35ZKQMQ.js.map → chunk-CAM66IXC.js.map} +0 -0
  130. /package/dist/esm/{chunk-4G3FJUER.js.map → chunk-INGT6DB6.js.map} +0 -0
  131. /package/dist/esm/{chunk-4ZHBNYXM.js.map → chunk-J6B7UCZN.js.map} +0 -0
  132. /package/dist/esm/{chunk-LTUW36HM.js.map → chunk-KGCGT4MJ.js.map} +0 -0
  133. /package/dist/esm/{chunk-6WHKGVWY.js.map → chunk-NZJRXZYX.js.map} +0 -0
  134. /package/dist/esm/{chunk-NFSW36RG.js.map → chunk-ODHCDJ3Y.js.map} +0 -0
  135. /package/dist/esm/{chunk-RSG4XWHU.js.map → chunk-SHKPQ3RI.js.map} +0 -0
  136. /package/dist/esm/{chunk-6SGJWML7.js.map → chunk-XKYPJTRN.js.map} +0 -0
@@ -1,3 +1,3 @@
1
1
  "use client";
2
- "use strict";"use client";var fn=Object.create;var fe=Object.defineProperty;var mn=Object.getOwnPropertyDescriptor;var bn=Object.getOwnPropertyNames;var Rn=Object.getPrototypeOf,gn=Object.prototype.hasOwnProperty;var vn=(e,n)=>{for(var t in n)fe(e,t,{get:n[t],enumerable:!0})},Ae=(e,n,t,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let a of bn(n))!gn.call(e,a)&&a!==t&&fe(e,a,{get:()=>n[a],enumerable:!(r=mn(n,a))||r.enumerable});return e};var Y=(e,n,t)=>(t=e!=null?fn(Rn(e)):{},Ae(n||!e||!e.__esModule?fe(t,"default",{value:e,enumerable:!0}):t,e)),hn=e=>Ae(fe({},"__esModule",{value:!0}),e);var Hn={};vn(Hn,{Inspector:()=>Ne});module.exports=hn(Hn);var F=Y(require("react")),un=Y(require("classnames")),cn=require("radix-ui/internal");var me=Y(require("react")),xe=me.createContext(null);function De(){let e=me.useContext(xe);if(!e)throw new Error("Shell.Handle must be used within a resizable pane");return e}var S=Y(require("react")),$e=require("radix-ui/internal"),Fe=Y(require("classnames"));var ne=S.forwardRef(({className:e,children:n,...t},r)=>{let{containerRef:a,controls:l,cssVarName:m,minSize:V,maxSize:z,defaultSize:E,orientation:y,edge:U,growth:b,onResize:T,onResizeStart:Z,onResizeEnd:B,snapPoints:k,snapTolerance:P,collapseThreshold:O,collapsible:A,target:I,requestCollapse:j,requestToggle:L}=De(),M=S.useRef(null),W=S.useCallback(o=>{M.current=o,typeof r=="function"?r(o):r&&(r.current=o)},[r]),x=S.useRef(null);S.useEffect(()=>()=>{x.current?.(),x.current=null},[]);let i=S.useCallback(()=>{let o=a.current;if(!o)return E;let c=Number.parseFloat(getComputedStyle(o).getPropertyValue(m));return Number.isFinite(c)?c:E},[a,m,E]),u=S.useCallback(()=>{let o=a.current,c=M.current,p=o?.closest(".kui-ShellRoot")?.getBoundingClientRect();if(!o||!p||!c)return z;let g=o.getBoundingClientRect(),N=c.getBoundingClientRect(),C=b(getComputedStyle(o).direction==="rtl"),f;y==="vertical"?f=C>0?p.right-g.left:g.right-p.left:f=C>0?p.bottom-g.top:g.bottom-p.top;let Q=y==="vertical"?N.width:N.height;return!(p.width>0&&p.height>0)||!Number.isFinite(f)?z:Math.max(V,Math.min(z,Math.round(f-Q)))},[a,b,z,V,y]),h=()=>{M.current?.setAttribute("aria-valuemax",String(u()))};(0,$e.useLayoutEffect)(()=>{M.current?.setAttribute("aria-valuenow",String(Math.round(i())))},[i]);let R=(o,c)=>{o.style.setProperty(m,`${c}px`),M.current?.setAttribute("aria-valuenow",String(Math.round(c)))},D=I.charAt(0).toUpperCase()+I.slice(1);return S.createElement("div",{ref:W,className:(0,Fe.default)("kui-ShellResizer",e),"data-orientation":y,"data-edge":U,role:"separator",tabIndex:0,"aria-label":`Resize ${D} pane`,"aria-controls":l,"aria-orientation":y,"aria-valuemin":V,"aria-valuemax":z,...t,onPointerDown:o=>{t.onPointerDown?.(o);let c=a.current;if(!c||o.defaultPrevented||o.button!==0)return;o.preventDefault();let p=o.currentTarget,g=o.pointerId;x.current?.();try{p.setPointerCapture(g)}catch{}let N=getComputedStyle(c),C=Number.parseFloat(N.getPropertyValue(m)),f=Number.isFinite(C)?C:E,Q=y==="vertical"?o.clientX:o.clientY,s=b(N.direction==="rtl"),$=u();p.setAttribute("aria-valuemax",String($));let _=w=>Math.min(Math.max(w,V),$);c.setAttribute("data-resizing",""),p.setAttribute("data-dragging","");let G=document.body,Pe=G.style.cursor,dn=G.style.userSelect;G.style.cursor=y==="vertical"?"col-resize":"row-resize",G.style.userSelect="none",Z?.(f);let ee=f,Se=f,q=0,ie=null,Ve=()=>{if(q=0,ie===null)return;let w=ie;ie=null,T?.(w)},Ie=null,Me=!1,pn=(w,re)=>{if(w.type===re)Me=!0;else if(Me)return!1;return!0},X=w=>{if(!pn(w,"pointermove")||w===Ie)return;Ie=w;let re=y==="vertical"?w.clientX:w.clientY;Se=f+(re-Q)*s,ee=_(Se),R(c,ee),ie=ee,q||(q=requestAnimationFrame(Ve))},pe=()=>{q&&cancelAnimationFrame(q),q=0;try{p.releasePointerCapture(g)}catch{}window.removeEventListener("pointermove",X),document.removeEventListener("pointermove",X),window.removeEventListener("mousemove",X),document.removeEventListener("mousemove",X),p.removeEventListener("pointermove",X),window.removeEventListener("pointerup",H),document.removeEventListener("pointerup",H),window.removeEventListener("mouseup",H),document.removeEventListener("mouseup",H),window.removeEventListener("pointercancel",H),document.removeEventListener("pointercancel",H),window.removeEventListener("keydown",Be),p.removeEventListener("lostpointercapture",H),c.removeAttribute("data-resizing"),p.removeAttribute("data-dragging"),G.style.cursor=Pe,G.style.userSelect=dn,x.current=null},ye=!1,H=()=>{if(ye)return;if(ye=!0,q&&cancelAnimationFrame(q),Ve(),A&&typeof O=="number"&&Se<=O){R(c,f),T?.(f),pe(),j?.(),B?.(f);return}let w=ee;if(k&&k.length){let re=k.reduce((Oe,He)=>Math.abs(He-ee)<Math.abs(Oe-ee)?He:Oe,k[0]);Math.abs(re-ee)<=P&&(w=_(re),R(c,w),T?.(w))}B?.(w),pe()},Be=w=>{w.key==="Escape"&&(q&&cancelAnimationFrame(q),q=0,ie=null,R(c,f),T?.(f),ye=!0,B?.(f),pe())};window.addEventListener("pointermove",X),document.addEventListener("pointermove",X),window.addEventListener("mousemove",X),document.addEventListener("mousemove",X),p.addEventListener("pointermove",X),window.addEventListener("pointerup",H),document.addEventListener("pointerup",H),window.addEventListener("mouseup",H),document.addEventListener("mouseup",H),window.addEventListener("pointercancel",H),document.addEventListener("pointercancel",H),window.addEventListener("keydown",Be),p.addEventListener("lostpointercapture",H),x.current=pe},onDoubleClick:o=>{t.onDoubleClick?.(o),!o.defaultPrevented&&A&&L?.()},onFocus:o=>{t.onFocus?.(o),h()},onKeyDown:o=>{t.onKeyDown?.(o);let c=a.current;if(!c||o.defaultPrevented)return;if(o.key==="Enter"){A&&L&&(o.preventDefault(),L());return}let p=i(),g=u(),N=f=>Math.min(Math.max(f,V),g),C;if(o.key==="Home")C=N(V);else if(o.key==="End")C=N(g);else{let f=y==="vertical"?o.key==="ArrowRight"?1:o.key==="ArrowLeft"?-1:0:o.key==="ArrowDown"?1:o.key==="ArrowUp"?-1:0;if(f===0)return;let Q=o.shiftKey?32:8;C=N(p+f*Q*b(getComputedStyle(c).direction==="rtl"))}o.preventDefault(),Z?.(p),R(c,C),T?.(C),B?.(C)}},n)});ne.displayName="Shell.Handle";var Pn=S.forwardRef((e,n)=>S.createElement(ne,{...e,ref:n}));Pn.displayName="Shell.Panel.Handle";var Sn=S.forwardRef((e,n)=>S.createElement(ne,{...e,ref:n}));Sn.displayName="Shell.Sidebar.Handle";var be=S.forwardRef((e,n)=>S.createElement(ne,{...e,ref:n}));be.displayName="Shell.Inspector.Handle";var yn=S.forwardRef((e,n)=>S.createElement(ne,{...e,ref:n}));yn.displayName="Shell.Bottom.Handle";var v=Y(require("react")),de=require("radix-ui/internal");var le=Y(require("react"));var Ue={xs:"(min-width: 520px)",sm:"(min-width: 768px)",md:"(min-width: 1024px)",lg:"(min-width: 1280px)",xl:"(min-width: 1640px)"},Re=["initial","xs","sm","md","lg","xl"];var xn=Object.entries(Ue),Ee=null,se=new Set,te=null;function ze(){return Ee??(Ee=xn.map(([e,n])=>[e,window.matchMedia(n)])),Ee}function ve(){let e="initial";for(let[n,t]of ze())t.matches&&(e=n);return e}function ge(){let e=ve();e!==te&&(te=e,se.forEach(n=>n()))}function je(e){if(typeof window>"u")return()=>{};if(se.size===0){te=ve();for(let[,n]of ze())typeof n.addEventListener=="function"?n.addEventListener("change",ge):n.addListener?.(ge)}return se.add(e),()=>{if(se.delete(e),!(se.size>0)){for(let[,n]of ze())try{typeof n.removeEventListener=="function"?n.removeEventListener("change",ge):n.removeListener?.(ge)}catch{}te=null}}}function En(){return typeof window>"u"?"initial":(te??(te=ve()),te)}function zn(){return"initial"}function ue(){return typeof window>"u"?"initial":ve()}var wn=()=>!0,Cn=()=>!1,_e=()=>()=>{},Tn=()=>"initial";function qe(e=!0){let n=le.useSyncExternalStore(e?je:_e,e?En:Tn,zn),t=le.useSyncExternalStore(e?je:_e,wn,Cn);return le.useMemo(()=>({breakpoint:n,ready:t}),[n,t])}var J=Y(require("react")),We=require("radix-ui/internal");function Ke(e){return typeof e=="object"&&e!==null}function ce(e,n){let t={},r=null;for(let a of Re){if(e!==void 0&&!Ke(e)){t[a]=e;continue}let l=Ke(e)?e[a]:void 0;l!==void 0&&(r={value:l}),t[a]=r?r.value:n(a)}return t}function oe(e){let n=e.initial;return Re.every(t=>e[t]===n)?n:void 0}function we(e,n){let t=oe(n);if(t!==void 0)return{[`data-${e}`]:t};let r={};for(let a of Re)r[`data-${e}-${a}`]=n[a];return r}function Ce(e){return typeof e=="object"&&e!==null?JSON.stringify(e):String(e)}var Kn=ce("fixed",()=>"fixed");function Te(e){e.version+=1;for(let n of e.listeners)n()}function kn(e,n){return e.listeners.add(n),()=>{e.listeners.delete(n)}}var Ln=J.createContext(null);function Qe(e){let n=J.useContext(Ln);if(!n)throw new Error(`${e} must be used within <Shell.Root>`);return n}function Ge(e,n){let t=J.useCallback(r=>kn(e,r),[e]);return J.useSyncExternalStore(t,()=>e.peek===n,()=>!1)}var Nn=J.createContext(null);function Xe(e,n){let t=J.useContext(Nn);if(!t)throw new Error("Shell panes must be used within <Shell.Root>");let{registerInset:r,unregisterInset:a}=t;(0,We.useLayoutEffect)(()=>{if(n)return r(e),()=>a(e)},[e,n,r,a])}var ke=e=>typeof e=="object"&&e!==null;function In(e){for(let n of["initial","xs","sm","md","lg","xl"]){let t=e[n];if(t!==void 0)return t}return"closed"}function Ye(e){let{name:n,label:t,propNames:r,presentationTable:a,builtIn:l}=e,m=Qe(`Shell.${t}`),V=v.useId(),z=e.id??`shell-${n}${V}`,E=e.controlled!==void 0,y=ke(e.controlled);y&&(`${t}${r.controlled}${r.default}`,void 0);let U=y?e.controlled:void 0,b=U??(ke(e.defaultValue)?e.defaultValue:void 0),T=Ce(b),[Z,B]=v.useState(()=>typeof e.defaultValue=="string"?e.defaultValue:"auto"),k=v.useMemo(()=>U?ce(U,()=>In(U)):ce(b,s=>l(a[s])),[T,y,a,l]),P=Z;E&&(P=U?"auto":e.controlled);let O=oe(a)===void 0||P==="auto"&&oe(k)===void 0,{breakpoint:A,ready:I}=qe(O),j=s=>{let $=oe(s);return $!==void 0?$:I?s[A]:void 0},L=P==="auto"?j(k):P,M=j(a),W=M==="overlay",x=L===void 0?void 0:L!=="closed",i=x===!0&&W,u=e.defaultValue,h=v.useRef({state:P,value:L,autoTable:k,defaultValue:u,controlled:E,onChange:e.onChange,toggleNext:e.toggleNext});(0,de.useLayoutEffect)(()=>{h.current={state:P,value:L,autoTable:k,defaultValue:u,controlled:E,onChange:e.onChange,toggleNext:e.toggleNext}});let R=v.useCallback(()=>{let s=h.current;return s.value!==void 0?s.value:s.state==="auto"?s.autoTable[ue()]:void 0},[]),D=v.useCallback(()=>{let s=h.current;return typeof s.defaultValue=="string"?s.defaultValue:ke(s.defaultValue)?s.autoTable[ue()]:void 0},[]),o=v.useCallback((s,$)=>{let _=h.current;R()!==s&&(_.onChange?.(s,$),_.controlled||B(s))},[R]),c=v.useCallback(s=>{let $=h.current,_=R()??"closed",G=$.toggleNext?$.toggleNext(_,D()):_==="closed"?"open":"closed";o(G,s)},[o,R,D]),p=v.useRef(null),g=v.useCallback(s=>{p.current=s},[]);(0,de.useLayoutEffect)(()=>{let s={name:n,id:z,el:p.current,value:L,presentation:M,presentationTable:a,overlayLive:i,size:e.size,setValue:o,toggle:c};return m.entries.set(n,s),Te(m),()=>{m.entries.get(n)===s&&(m.entries.delete(n),Te(m))}},[m,n,z,L,M,a,i,e.size,o,c]);let N=v.useRef({onExpand:e.onExpand,onCollapse:e.onCollapse});(0,de.useLayoutEffect)(()=>{N.current={onExpand:e.onExpand,onCollapse:e.onCollapse}});let C=v.useRef({state:P,shown:x});v.useEffect(()=>{let s=C.current;s.state!==P&&s.shown!==void 0&&x!==void 0&&s.shown!==x&&(x?N.current.onExpand?.():N.current.onCollapse?.()),C.current={state:P,shown:x}},[P,x]),(0,de.useLayoutEffect)(()=>{},[]);let f=v.useRef(E);v.useEffect(()=>{},[E,t,r.controlled]);let Q=Ge(m,n)&&x===!1&&!W;return{store:m,id:z,state:P,value:L,shown:x,presentation:M,overlaying:W,overlayLive:i,peeking:Q,ready:I,breakpoint:A,autoTable:k,setValue:o,toggle:c,defaultHereNow:D,setElement:g}}function Je(e,n){let{state:t,value:r,presentation:a,shown:l}=e;return{...n,"data-state":t,...t==="auto"?we("auto",e.autoTable):{},"data-presentation":a,"data-mode":r===void 0?void 0:r==="closed"?"collapsed":"expanded","data-open":a==="stacked"&&l?"":void 0,"data-peek":e.peeking?"":void 0}}function Ze(e,n){let t=Ce(e),r=v.useMemo(()=>ce(e,()=>n),[t,n]),a=v.useMemo(()=>oe(r)===void 0?we("presentation",r):{},[r]);return{table:r,attributes:a}}var d=Y(require("react")),ae=require("radix-ui/internal");function en(e,n="horizontal"){if(e==null)return;if(typeof e=="number"&&Number.isFinite(e))return e;let t=String(e).trim();if(!t)return;if(t.endsWith("px"))return Number.parseFloat(t);if(t.endsWith("rem")){let a=Number.parseFloat(getComputedStyle(document.documentElement).fontSize||"16")||16;return Number.parseFloat(t)*a}if(t.endsWith("%")){let a=Number.parseFloat(t),l=n==="horizontal"?document.documentElement.clientWidth||window.innerWidth||0:document.documentElement.clientHeight||window.innerHeight||0;return a/100*l}let r=Number.parseFloat(t);return Number.isFinite(r)?r:void 0}var he=(e,n,t)=>Math.max(n??e,Math.min(t??e,e));function nn(e,n,t,r){let[a]=d.useState(()=>{let l=e??n;return typeof l=="number"&&Number.isFinite(l)?`${he(l,t,r)}px`:void 0});return a}function tn(e){let{name:n,elementRef:t,cssVarName:r,orientation:a,minSize:l,maxSize:m,resizable:V,size:z,defaultSize:E,paneId:y,persistence:U}=e,b=d.useRef(e);(0,ae.useLayoutEffect)(()=>{b.current=e});let T=d.useRef(null),Z=d.useRef(0);d.useEffect(()=>()=>{T.current&&clearTimeout(T.current)},[]);let B=d.useCallback((i,u)=>{let{onSizeChange:h,sizeUpdate:R,sizeUpdateMs:D}=b.current;if(h){if(R==="debounce"){T.current&&clearTimeout(T.current),T.current=setTimeout(()=>{T.current=null,b.current.onSizeChange?.(i,u)},D);return}if(R==="throttle"){let o=Date.now();if(o-Z.current<D)return;Z.current=o}h(i,u)}},[]),k=d.useCallback(i=>en(i,a==="vertical"?"horizontal":"vertical"),[a]),P=d.useRef(!1),O=d.useCallback((i,u)=>{let h=t.current;if(h){h.style.setProperty(r,`${i}px`);for(let R of h.querySelectorAll(":scope > .kui-ShellResizer"))R.setAttribute("aria-valuenow",String(Math.round(i)));u&&(P.current=!0)}},[t,r]);(0,ae.useLayoutEffect)(()=>{P.current||O(e.expandedSize,!1)},[e.expandedSize,O]),(0,ae.useLayoutEffect)(()=>{if(z!==void 0||E===void 0)return;let i=k(E);if(typeof i!="number"||!Number.isFinite(i))return;let u=he(i,l,m);O(u,!0),B(u,{reason:"init"})},[]),(0,ae.useLayoutEffect)(()=>{if(z===void 0||b.current.overlayingNow())return;let i=k(z);if(typeof i!="number"||!Number.isFinite(i))return;let u=he(i,l,m);O(u,!0),B(u,{reason:"controlled"})},[z,l,m,e.overlaying,k,O,B]);let A=U!==void 0,I=d.useMemo(()=>{if(A)return{load:()=>b.current.persistence?.load?.(),save:u=>b.current.persistence?.save?.(u)};if(!y)return;let i=`kookie-ui:shell:${n}:${y}`;return{load:()=>{if(!(typeof window>"u"))try{let u=window.localStorage.getItem(i);return u?Number(u):void 0}catch{return}},save:u=>{if(!(typeof window>"u"))try{window.localStorage.setItem(i,String(u))}catch{}}}},[n,y,A]);(0,ae.useLayoutEffect)(()=>{if(!V||!I?.load||b.current.overlayingNow())return;let i=!0,u=R=>{if(!i||typeof R!="number"||!Number.isFinite(R))return;let D=he(R,l,m);O(D,!0),b.current.onResize?.(D)},h=I.load();return h instanceof Promise?h.then(u).catch(R=>{}):u(h),()=>{i=!1}},[V,I,e.overlaying,O,l,m,n]);let j=d.useCallback(i=>b.current.onResize?.(i),[]),L=d.useCallback(i=>{P.current=!0,b.current.onResizeStart?.(i)},[]),M=d.useCallback(i=>{b.current.onResizeEnd?.(i),B(i,{reason:"resize"}),I?.save?.(i)},[B,I]),W=d.useCallback(()=>b.current.requestCollapse(),[]),x=d.useCallback(()=>b.current.requestToggle(),[]);return d.useMemo(()=>({containerRef:t,controls:e.elementId,cssVarName:r,minSize:l,maxSize:m,defaultSize:e.expandedSize,orientation:a,edge:e.edge,growth:e.growth,onResize:j,onResizeStart:L,onResizeEnd:M,target:n,collapsible:e.collapsible,snapPoints:e.snapPoints,snapTolerance:e.snapTolerance??8,collapseThreshold:e.collapseThreshold,requestCollapse:W,requestToggle:x}),[t,e.elementId,r,l,m,e.expandedSize,a,e.edge,e.growth,j,L,M,n,e.collapsible,e.snapPoints,e.snapTolerance,e.collapseThreshold,W,x])}function rn(e,n){let t=d.Children.toArray(e),r=t.filter(l=>d.isValidElement(l)&&l.type===n),a=t.filter(l=>!(d.isValidElement(l)&&l.type===n));return{handles:r,content:a}}function Le(e){if(e===void 0)return;if(typeof e=="boolean")return e?"open":"closed";let n={};for(let[t,r]of Object.entries(e))typeof r=="boolean"&&(n[t]=r?"open":"closed");return n}var on=()=>"closed";var an=e=>e?1:-1;function sn(e){if(!("height"in e)&&!("resizer"in e))return e;let{height:n,resizer:t,...r}=e;return r}var K=Y(require("react")),Mn=K.createContext(null);function ln({children:e}){let n=K.useMemo(()=>({title:null,mirrors:new Set,collapsed:!1,listeners:new Set,version:0}),[]);return K.createElement(Mn.Provider,{value:n},e)}var Bn={controlled:"open",default:"defaultOpen"},On={initial:"overlay",sm:"fixed"},Ne=F.forwardRef((e,n)=>{let{className:t,presentation:r=On,defaultOpen:a,open:l,onOpenChange:m,expandedSize:V=320,minSize:z=200,maxSize:E=500,resizable:y=!1,collapsible:U=!0,onExpand:b,onCollapse:T,onResize:Z,onResizeStart:B,onResizeEnd:k,snapPoints:P,snapTolerance:O,collapseThreshold:A,paneId:I,persistence:j,children:L,style:M,onSizeChange:W,sizeUpdate:x,sizeUpdateMs:i=50,size:u,defaultSize:h,inset:R,id:D,...o}=e,{table:c,attributes:p}=Ze(r,"fixed"),g=Ye({name:"inspector",label:"Inspector",propNames:Bn,id:D,controlled:Le(l),defaultValue:Le(a),presentationTable:c,builtIn:on,onChange:(G,Pe)=>m?.(G!=="closed",{reason:Pe}),onExpand:b,onCollapse:T,size:V});Xe("inspector",R),F.useEffect(()=>{(P!==void 0||A!==void 0||I!==void 0||j!==void 0)&&void 0},[P,A,I,j]);let N=F.useRef(null),C=(0,cn.useComposedRefs)(n,g.setElement,N),f=tn({name:"inspector",elementId:g.id,elementRef:N,cssVarName:"--inspector-size",orientation:"vertical",edge:"start",growth:an,expandedSize:V,minSize:z,maxSize:E,resizable:y,collapsible:U,size:u,defaultSize:h,onSizeChange:W,sizeUpdate:x,sizeUpdateMs:i,onResize:Z,onResizeStart:B,onResizeEnd:k,snapPoints:P,snapTolerance:O,collapseThreshold:A,paneId:I,persistence:j,overlaying:g.overlaying,overlayingNow:()=>c[ue()]==="overlay",requestCollapse:()=>g.setValue("closed","toggle"),requestToggle:()=>g.toggle("toggle")}),{handles:Q,content:s}=rn(L,be),$=y&&g.shown!==!1&&!g.overlaying?F.createElement(xe.Provider,{value:f},Q.length>0?Q:F.createElement(ne,null)):null,_=nn(u,h,z,E);return F.createElement("div",{...sn(o),role:o.role??"complementary",id:g.id,ref:C,className:(0,un.default)("kui-ShellPane","kui-ShellInspector",t),...Je(g,p),"data-inset":R||void 0,tabIndex:g.overlaying?-1:o.tabIndex,style:{...M,"--inspector-expanded-size":`${V}px`,..._?{"--inspector-size":_}:{},"--inspector-min-size":`${z}px`,"--inspector-max-size":`${E}px`}},F.createElement("div",{className:"kui-ShellInspectorContent"},F.createElement(ln,null,s)),$)});Ne.displayName="Shell.Inspector";Ne.Handle=be;
2
+ "use strict";"use client";var fn=Object.create;var fe=Object.defineProperty;var mn=Object.getOwnPropertyDescriptor;var bn=Object.getOwnPropertyNames;var Rn=Object.getPrototypeOf,gn=Object.prototype.hasOwnProperty;var vn=(e,n)=>{for(var t in n)fe(e,t,{get:n[t],enumerable:!0})},Ae=(e,n,t,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let a of bn(n))!gn.call(e,a)&&a!==t&&fe(e,a,{get:()=>n[a],enumerable:!(r=mn(n,a))||r.enumerable});return e};var Y=(e,n,t)=>(t=e!=null?fn(Rn(e)):{},Ae(n||!e||!e.__esModule?fe(t,"default",{value:e,enumerable:!0}):t,e)),hn=e=>Ae(fe({},"__esModule",{value:!0}),e);var Hn={};vn(Hn,{Inspector:()=>Ne});module.exports=hn(Hn);var $=Y(require("react")),un=Y(require("classnames")),cn=require("radix-ui/internal");var me=Y(require("react")),xe=me.createContext(null);function Fe(){let e=me.useContext(xe);if(!e)throw new Error("Shell.Handle must be used within a resizable pane");return e}var S=Y(require("react")),De=require("radix-ui/internal"),$e=Y(require("classnames"));var ne=S.forwardRef(({className:e,children:n,...t},r)=>{let{containerRef:a,controls:l,cssVarName:m,minSize:V,maxSize:z,defaultSize:E,orientation:y,edge:U,growth:b,onResize:T,onResizeStart:Z,onResizeEnd:B,snapPoints:k,snapTolerance:P,collapseThreshold:O,collapsible:A,target:M,requestCollapse:j,requestToggle:L}=Fe(),I=S.useRef(null),W=S.useCallback(o=>{I.current=o,typeof r=="function"?r(o):r&&(r.current=o)},[r]),x=S.useRef(null);S.useEffect(()=>()=>{x.current?.(),x.current=null},[]);let i=S.useCallback(()=>{let o=a.current;if(!o)return E;let c=Number.parseFloat(getComputedStyle(o).getPropertyValue(m));return Number.isFinite(c)?c:E},[a,m,E]),u=S.useCallback(()=>{let o=a.current,c=I.current,p=o?.closest(".kui-ShellRoot")?.getBoundingClientRect();if(!o||!p||!c)return z;let g=o.getBoundingClientRect(),N=c.getBoundingClientRect(),C=b(getComputedStyle(o).direction==="rtl"),f;y==="vertical"?f=C>0?p.right-g.left:g.right-p.left:f=C>0?p.bottom-g.top:g.bottom-p.top;let Q=y==="vertical"?N.width:N.height;return!(p.width>0&&p.height>0)||!Number.isFinite(f)?z:Math.max(V,Math.min(z,Math.round(f-Q)))},[a,b,z,V,y]),h=()=>{I.current?.setAttribute("aria-valuemax",String(u()))};(0,De.useLayoutEffect)(()=>{I.current?.setAttribute("aria-valuenow",String(Math.round(i())))},[i]);let R=(o,c)=>{o.style.setProperty(m,`${c}px`),I.current?.setAttribute("aria-valuenow",String(Math.round(c)))},F=M.charAt(0).toUpperCase()+M.slice(1);return S.createElement("div",{ref:W,className:(0,$e.default)("kui-ShellResizer",e),"data-orientation":y,"data-edge":U,role:"separator",tabIndex:0,"aria-label":`Resize ${F} pane`,"aria-controls":l,"aria-orientation":y,"aria-valuemin":V,"aria-valuemax":z,...t,onPointerDown:o=>{t.onPointerDown?.(o);let c=a.current;if(!c||o.defaultPrevented||o.button!==0)return;o.preventDefault();let p=o.currentTarget,g=o.pointerId;x.current?.();try{p.setPointerCapture(g)}catch{}let N=getComputedStyle(c),C=Number.parseFloat(N.getPropertyValue(m)),f=Number.isFinite(C)?C:E,Q=y==="vertical"?o.clientX:o.clientY,s=b(N.direction==="rtl"),D=u();p.setAttribute("aria-valuemax",String(D));let _=w=>Math.min(Math.max(w,V),D);c.setAttribute("data-resizing",""),p.setAttribute("data-dragging","");let G=document.body,Pe=G.style.cursor,dn=G.style.userSelect;G.style.cursor=y==="vertical"?"col-resize":"row-resize",G.style.userSelect="none",Z?.(f);let ee=f,Se=f,q=0,ie=null,Ve=()=>{if(q=0,ie===null)return;let w=ie;ie=null,T?.(w)},Me=null,Ie=!1,pn=(w,re)=>{if(w.type===re)Ie=!0;else if(Ie)return!1;return!0},X=w=>{if(!pn(w,"pointermove")||w===Me)return;Me=w;let re=y==="vertical"?w.clientX:w.clientY;Se=f+(re-Q)*s,ee=_(Se),R(c,ee),ie=ee,q||(q=requestAnimationFrame(Ve))},pe=()=>{q&&cancelAnimationFrame(q),q=0;try{p.releasePointerCapture(g)}catch{}window.removeEventListener("pointermove",X),document.removeEventListener("pointermove",X),window.removeEventListener("mousemove",X),document.removeEventListener("mousemove",X),p.removeEventListener("pointermove",X),window.removeEventListener("pointerup",H),document.removeEventListener("pointerup",H),window.removeEventListener("mouseup",H),document.removeEventListener("mouseup",H),window.removeEventListener("pointercancel",H),document.removeEventListener("pointercancel",H),window.removeEventListener("keydown",Be),p.removeEventListener("lostpointercapture",H),c.removeAttribute("data-resizing"),p.removeAttribute("data-dragging"),G.style.cursor=Pe,G.style.userSelect=dn,x.current=null},ye=!1,H=()=>{if(ye)return;if(ye=!0,q&&cancelAnimationFrame(q),Ve(),A&&typeof O=="number"&&Se<=O){R(c,f),T?.(f),pe(),j?.(),B?.(f);return}let w=ee;if(k&&k.length){let re=k.reduce((Oe,He)=>Math.abs(He-ee)<Math.abs(Oe-ee)?He:Oe,k[0]);Math.abs(re-ee)<=P&&(w=_(re),R(c,w),T?.(w))}B?.(w),pe()},Be=w=>{w.key==="Escape"&&(q&&cancelAnimationFrame(q),q=0,ie=null,R(c,f),T?.(f),ye=!0,B?.(f),pe())};window.addEventListener("pointermove",X),document.addEventListener("pointermove",X),window.addEventListener("mousemove",X),document.addEventListener("mousemove",X),p.addEventListener("pointermove",X),window.addEventListener("pointerup",H),document.addEventListener("pointerup",H),window.addEventListener("mouseup",H),document.addEventListener("mouseup",H),window.addEventListener("pointercancel",H),document.addEventListener("pointercancel",H),window.addEventListener("keydown",Be),p.addEventListener("lostpointercapture",H),x.current=pe},onDoubleClick:o=>{t.onDoubleClick?.(o),!o.defaultPrevented&&A&&L?.()},onFocus:o=>{t.onFocus?.(o),h()},onKeyDown:o=>{t.onKeyDown?.(o);let c=a.current;if(!c||o.defaultPrevented)return;if(o.key==="Enter"){A&&L&&(o.preventDefault(),L());return}let p=i(),g=u(),N=f=>Math.min(Math.max(f,V),g),C;if(o.key==="Home")C=N(V);else if(o.key==="End")C=N(g);else{let f=y==="vertical"?o.key==="ArrowRight"?1:o.key==="ArrowLeft"?-1:0:o.key==="ArrowDown"?1:o.key==="ArrowUp"?-1:0;if(f===0)return;let Q=o.shiftKey?32:8;C=N(p+f*Q*b(getComputedStyle(c).direction==="rtl"))}o.preventDefault(),Z?.(p),R(c,C),T?.(C),B?.(C)}},n)});ne.displayName="Shell.Handle";var Pn=S.forwardRef((e,n)=>S.createElement(ne,{...e,ref:n}));Pn.displayName="Shell.Panel.Handle";var Sn=S.forwardRef((e,n)=>S.createElement(ne,{...e,ref:n}));Sn.displayName="Shell.Sidebar.Handle";var be=S.forwardRef((e,n)=>S.createElement(ne,{...e,ref:n}));be.displayName="Shell.Inspector.Handle";var yn=S.forwardRef((e,n)=>S.createElement(ne,{...e,ref:n}));yn.displayName="Shell.Bottom.Handle";var v=Y(require("react")),de=require("radix-ui/internal");var le=Y(require("react"));var Ue={xs:"(min-width: 520px)",sm:"(min-width: 768px)",md:"(min-width: 1024px)",lg:"(min-width: 1280px)",xl:"(min-width: 1640px)"},Re=["initial","xs","sm","md","lg","xl"];var xn=Object.entries(Ue),Ee=null,se=new Set,te=null;function ze(){return Ee??(Ee=xn.map(([e,n])=>[e,window.matchMedia(n)])),Ee}function ve(){let e="initial";for(let[n,t]of ze())t.matches&&(e=n);return e}function ge(){let e=ve();e!==te&&(te=e,se.forEach(n=>n()))}function je(e){if(typeof window>"u")return()=>{};if(se.size===0){te=ve();for(let[,n]of ze())typeof n.addEventListener=="function"?n.addEventListener("change",ge):n.addListener?.(ge)}return se.add(e),()=>{if(se.delete(e),!(se.size>0)){for(let[,n]of ze())try{typeof n.removeEventListener=="function"?n.removeEventListener("change",ge):n.removeListener?.(ge)}catch{}te=null}}}function En(){return typeof window>"u"?"initial":(te??(te=ve()),te)}function zn(){return"initial"}function ue(){return typeof window>"u"?"initial":ve()}var wn=()=>!0,Cn=()=>!1,_e=()=>()=>{},Tn=()=>"initial";function qe(e=!0){let n=le.useSyncExternalStore(e?je:_e,e?En:Tn,zn),t=le.useSyncExternalStore(e?je:_e,wn,Cn);return le.useMemo(()=>({breakpoint:n,ready:t}),[n,t])}var J=Y(require("react")),We=require("radix-ui/internal");function Ke(e){return typeof e=="object"&&e!==null}function ce(e,n){let t={},r=null;for(let a of Re){if(e!==void 0&&!Ke(e)){t[a]=e;continue}let l=Ke(e)?e[a]:void 0;l!==void 0&&(r={value:l}),t[a]=r?r.value:n(a)}return t}function oe(e){let n=e.initial;return Re.every(t=>e[t]===n)?n:void 0}function we(e,n){let t=oe(n);if(t!==void 0)return{[`data-${e}`]:t};let r={};for(let a of Re)r[`data-${e}-${a}`]=n[a];return r}function Ce(e){return typeof e=="object"&&e!==null?JSON.stringify(e):String(e)}var Kn=ce("fixed",()=>"fixed");function Te(e){e.version+=1;for(let n of e.listeners)n()}function kn(e,n){return e.listeners.add(n),()=>{e.listeners.delete(n)}}var Ln=J.createContext(null);function Qe(e){let n=J.useContext(Ln);if(!n)throw new Error(`${e} must be used within <Shell.Root>`);return n}function Ge(e,n){let t=J.useCallback(r=>kn(e,r),[e]);return J.useSyncExternalStore(t,()=>e.peek===n,()=>!1)}var Nn=J.createContext(null);function Xe(e,n){let t=J.useContext(Nn);if(!t)throw new Error("Shell panes must be used within <Shell.Root>");let{registerOffFrame:r,unregisterOffFrame:a}=t;(0,We.useLayoutEffect)(()=>{if(!n)return r(e),()=>a(e)},[e,n,r,a])}var ke=e=>typeof e=="object"&&e!==null;function Mn(e){for(let n of["initial","xs","sm","md","lg","xl"]){let t=e[n];if(t!==void 0)return t}return"closed"}function Ye(e){let{name:n,label:t,propNames:r,presentationTable:a,builtIn:l}=e,m=Qe(`Shell.${t}`),V=v.useId(),z=e.id??`shell-${n}${V}`,E=e.controlled!==void 0,y=ke(e.controlled);y&&(`${t}${r.controlled}${r.default}`,void 0);let U=y?e.controlled:void 0,b=U??(ke(e.defaultValue)?e.defaultValue:void 0),T=Ce(b),[Z,B]=v.useState(()=>typeof e.defaultValue=="string"?e.defaultValue:"auto"),k=v.useMemo(()=>U?ce(U,()=>Mn(U)):ce(b,s=>l(a[s])),[T,y,a,l]),P=Z;E&&(P=U?"auto":e.controlled);let O=oe(a)===void 0||P==="auto"&&oe(k)===void 0,{breakpoint:A,ready:M}=qe(O),j=s=>{let D=oe(s);return D!==void 0?D:M?s[A]:void 0},L=P==="auto"?j(k):P,I=j(a),W=I==="overlay",x=L===void 0?void 0:L!=="closed",i=x===!0&&W,u=e.defaultValue,h=v.useRef({state:P,value:L,autoTable:k,defaultValue:u,controlled:E,onChange:e.onChange,toggleNext:e.toggleNext});(0,de.useLayoutEffect)(()=>{h.current={state:P,value:L,autoTable:k,defaultValue:u,controlled:E,onChange:e.onChange,toggleNext:e.toggleNext}});let R=v.useCallback(()=>{let s=h.current;return s.value!==void 0?s.value:s.state==="auto"?s.autoTable[ue()]:void 0},[]),F=v.useCallback(()=>{let s=h.current;return typeof s.defaultValue=="string"?s.defaultValue:ke(s.defaultValue)?s.autoTable[ue()]:void 0},[]),o=v.useCallback((s,D)=>{let _=h.current;R()!==s&&(_.onChange?.(s,D),_.controlled||B(s))},[R]),c=v.useCallback(s=>{let D=h.current,_=R()??"closed",G=D.toggleNext?D.toggleNext(_,F()):_==="closed"?"open":"closed";o(G,s)},[o,R,F]),p=v.useRef(null),g=v.useCallback(s=>{p.current=s},[]);(0,de.useLayoutEffect)(()=>{let s={name:n,id:z,el:p.current,value:L,presentation:I,presentationTable:a,overlayLive:i,size:e.size,setValue:o,toggle:c};return m.entries.set(n,s),Te(m),()=>{m.entries.get(n)===s&&(m.entries.delete(n),Te(m))}},[m,n,z,L,I,a,i,e.size,o,c]);let N=v.useRef({onExpand:e.onExpand,onCollapse:e.onCollapse});(0,de.useLayoutEffect)(()=>{N.current={onExpand:e.onExpand,onCollapse:e.onCollapse}});let C=v.useRef({state:P,shown:x});v.useEffect(()=>{let s=C.current;s.state!==P&&s.shown!==void 0&&x!==void 0&&s.shown!==x&&(x?N.current.onExpand?.():N.current.onCollapse?.()),C.current={state:P,shown:x}},[P,x]),(0,de.useLayoutEffect)(()=>{},[]);let f=v.useRef(E);v.useEffect(()=>{},[E,t,r.controlled]);let Q=Ge(m,n)&&x===!1&&!W;return{store:m,id:z,state:P,value:L,shown:x,presentation:I,overlaying:W,overlayLive:i,peeking:Q,ready:M,breakpoint:A,autoTable:k,setValue:o,toggle:c,defaultHereNow:F,setElement:g}}function Je(e,n){let{state:t,value:r,presentation:a,shown:l}=e;return{...n,"data-state":t,...t==="auto"?we("auto",e.autoTable):{},"data-presentation":a,"data-mode":r===void 0?void 0:r==="closed"?"collapsed":"expanded","data-open":a==="stacked"&&l?"":void 0,"data-peek":e.peeking?"":void 0}}function Ze(e,n){let t=Ce(e),r=v.useMemo(()=>ce(e,()=>n),[t,n]),a=v.useMemo(()=>oe(r)===void 0?we("presentation",r):{},[r]);return{table:r,attributes:a}}var d=Y(require("react")),ae=require("radix-ui/internal");function en(e,n="horizontal"){if(e==null)return;if(typeof e=="number"&&Number.isFinite(e))return e;let t=String(e).trim();if(!t)return;if(t.endsWith("px"))return Number.parseFloat(t);if(t.endsWith("rem")){let a=Number.parseFloat(getComputedStyle(document.documentElement).fontSize||"16")||16;return Number.parseFloat(t)*a}if(t.endsWith("%")){let a=Number.parseFloat(t),l=n==="horizontal"?document.documentElement.clientWidth||window.innerWidth||0:document.documentElement.clientHeight||window.innerHeight||0;return a/100*l}let r=Number.parseFloat(t);return Number.isFinite(r)?r:void 0}var he=(e,n,t)=>Math.max(n??e,Math.min(t??e,e));function nn(e,n,t,r){let[a]=d.useState(()=>{let l=e??n;return typeof l=="number"&&Number.isFinite(l)?`${he(l,t,r)}px`:void 0});return a}function tn(e){let{name:n,elementRef:t,cssVarName:r,orientation:a,minSize:l,maxSize:m,resizable:V,size:z,defaultSize:E,paneId:y,persistence:U}=e,b=d.useRef(e);(0,ae.useLayoutEffect)(()=>{b.current=e});let T=d.useRef(null),Z=d.useRef(0);d.useEffect(()=>()=>{T.current&&clearTimeout(T.current)},[]);let B=d.useCallback((i,u)=>{let{onSizeChange:h,sizeUpdate:R,sizeUpdateMs:F}=b.current;if(h){if(R==="debounce"){T.current&&clearTimeout(T.current),T.current=setTimeout(()=>{T.current=null,b.current.onSizeChange?.(i,u)},F);return}if(R==="throttle"){let o=Date.now();if(o-Z.current<F)return;Z.current=o}h(i,u)}},[]),k=d.useCallback(i=>en(i,a==="vertical"?"horizontal":"vertical"),[a]),P=d.useRef(!1),O=d.useCallback((i,u)=>{let h=t.current;if(h){h.style.setProperty(r,`${i}px`);for(let R of h.querySelectorAll(":scope > .kui-ShellResizer"))R.setAttribute("aria-valuenow",String(Math.round(i)));u&&(P.current=!0)}},[t,r]);(0,ae.useLayoutEffect)(()=>{P.current||O(e.expandedSize,!1)},[e.expandedSize,O]),(0,ae.useLayoutEffect)(()=>{if(z!==void 0||E===void 0)return;let i=k(E);if(typeof i!="number"||!Number.isFinite(i))return;let u=he(i,l,m);O(u,!0),B(u,{reason:"init"})},[]),(0,ae.useLayoutEffect)(()=>{if(z===void 0||b.current.overlayingNow())return;let i=k(z);if(typeof i!="number"||!Number.isFinite(i))return;let u=he(i,l,m);O(u,!0),B(u,{reason:"controlled"})},[z,l,m,e.overlaying,k,O,B]);let A=U!==void 0,M=d.useMemo(()=>{if(A)return{load:()=>b.current.persistence?.load?.(),save:u=>b.current.persistence?.save?.(u)};if(!y)return;let i=`kookie-ui:shell:${n}:${y}`;return{load:()=>{if(!(typeof window>"u"))try{let u=window.localStorage.getItem(i);return u?Number(u):void 0}catch{return}},save:u=>{if(!(typeof window>"u"))try{window.localStorage.setItem(i,String(u))}catch{}}}},[n,y,A]);(0,ae.useLayoutEffect)(()=>{if(!V||!M?.load||b.current.overlayingNow())return;let i=!0,u=R=>{if(!i||typeof R!="number"||!Number.isFinite(R))return;let F=he(R,l,m);O(F,!0),b.current.onResize?.(F)},h=M.load();return h instanceof Promise?h.then(u).catch(R=>{}):u(h),()=>{i=!1}},[V,M,e.overlaying,O,l,m,n]);let j=d.useCallback(i=>b.current.onResize?.(i),[]),L=d.useCallback(i=>{P.current=!0,b.current.onResizeStart?.(i)},[]),I=d.useCallback(i=>{b.current.onResizeEnd?.(i),B(i,{reason:"resize"}),M?.save?.(i)},[B,M]),W=d.useCallback(()=>b.current.requestCollapse(),[]),x=d.useCallback(()=>b.current.requestToggle(),[]);return d.useMemo(()=>({containerRef:t,controls:e.elementId,cssVarName:r,minSize:l,maxSize:m,defaultSize:e.expandedSize,orientation:a,edge:e.edge,growth:e.growth,onResize:j,onResizeStart:L,onResizeEnd:I,target:n,collapsible:e.collapsible,snapPoints:e.snapPoints,snapTolerance:e.snapTolerance??8,collapseThreshold:e.collapseThreshold,requestCollapse:W,requestToggle:x}),[t,e.elementId,r,l,m,e.expandedSize,a,e.edge,e.growth,j,L,I,n,e.collapsible,e.snapPoints,e.snapTolerance,e.collapseThreshold,W,x])}function rn(e,n){let t=d.Children.toArray(e),r=t.filter(l=>d.isValidElement(l)&&l.type===n),a=t.filter(l=>!(d.isValidElement(l)&&l.type===n));return{handles:r,content:a}}function Le(e){if(e===void 0)return;if(typeof e=="boolean")return e?"open":"closed";let n={};for(let[t,r]of Object.entries(e))typeof r=="boolean"&&(n[t]=r?"open":"closed");return n}var on=()=>"closed";var an=e=>e?1:-1;function sn(e){if(!("height"in e)&&!("resizer"in e))return e;let{height:n,resizer:t,...r}=e;return r}var K=Y(require("react")),In=K.createContext(null);function ln({children:e}){let n=K.useMemo(()=>({title:null,mirrors:new Set,collapsed:!1,listeners:new Set,version:0}),[]);return K.createElement(In.Provider,{value:n},e)}var Bn={controlled:"open",default:"defaultOpen"},On={initial:"overlay",sm:"fixed"},Ne=$.forwardRef((e,n)=>{let{className:t,presentation:r=On,defaultOpen:a,open:l,onOpenChange:m,expandedSize:V=320,minSize:z=200,maxSize:E=500,resizable:y=!1,collapsible:U=!0,onExpand:b,onCollapse:T,onResize:Z,onResizeStart:B,onResizeEnd:k,snapPoints:P,snapTolerance:O,collapseThreshold:A,paneId:M,persistence:j,children:L,style:I,onSizeChange:W,sizeUpdate:x,sizeUpdateMs:i=50,size:u,defaultSize:h,flush:R=!0,id:F,...o}=e,{table:c,attributes:p}=Ze(r,"fixed"),g=Ye({name:"inspector",label:"Inspector",propNames:Bn,id:F,controlled:Le(l),defaultValue:Le(a),presentationTable:c,builtIn:on,onChange:(G,Pe)=>m?.(G!=="closed",{reason:Pe}),onExpand:b,onCollapse:T,size:V});Xe("inspector",R),$.useEffect(()=>{(P!==void 0||A!==void 0||M!==void 0||j!==void 0)&&void 0},[P,A,M,j]);let N=$.useRef(null),C=(0,cn.useComposedRefs)(n,g.setElement,N),f=tn({name:"inspector",elementId:g.id,elementRef:N,cssVarName:"--inspector-size",orientation:"vertical",edge:"start",growth:an,expandedSize:V,minSize:z,maxSize:E,resizable:y,collapsible:U,size:u,defaultSize:h,onSizeChange:W,sizeUpdate:x,sizeUpdateMs:i,onResize:Z,onResizeStart:B,onResizeEnd:k,snapPoints:P,snapTolerance:O,collapseThreshold:A,paneId:M,persistence:j,overlaying:g.overlaying,overlayingNow:()=>c[ue()]==="overlay",requestCollapse:()=>g.setValue("closed","toggle"),requestToggle:()=>g.toggle("toggle")}),{handles:Q,content:s}=rn(L,be),D=y&&g.shown!==!1&&!g.overlaying?$.createElement(xe.Provider,{value:f},Q.length>0?Q:$.createElement(ne,null)):null,_=nn(u,h,z,E);return $.createElement("div",{...sn(o),role:o.role??"complementary",id:g.id,ref:C,className:(0,un.default)("kui-ShellPane","kui-ShellInspector",t),...Je(g,p),"data-flush":R||void 0,tabIndex:g.overlaying?-1:o.tabIndex,style:{...I,"--inspector-expanded-size":`${V}px`,..._?{"--inspector-size":_}:{},"--inspector-min-size":`${z}px`,"--inspector-max-size":`${E}px`}},$.createElement("div",{className:"kui-ShellInspectorContent"},$.createElement(ln,null,s)),D)});Ne.displayName="Shell.Inspector";Ne.Handle=be;
3
3
  //# sourceMappingURL=shell-inspector.js.map