ivt 0.0.4 → 0.0.5
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/accordion/index.d.ts +13 -0
- package/dist/accordion/index.mjs +2 -0
- package/dist/accordion/index.mjs.map +1 -0
- package/dist/badge/index.d.ts +13 -0
- package/dist/badge/index.mjs +2 -0
- package/dist/badge/index.mjs.map +1 -0
- package/dist/base/index.d.ts +15 -0
- package/dist/base/index.mjs +2 -0
- package/dist/base/index.mjs.map +1 -0
- package/dist/button/index.d.ts +14 -0
- package/dist/button/index.mjs +2 -0
- package/dist/button/index.mjs.map +1 -0
- package/dist/calendar/index.d.ts +11 -0
- package/dist/calendar/index.mjs +2 -0
- package/dist/calendar/index.mjs.map +1 -0
- package/dist/card/index.d.ts +12 -0
- package/dist/card/index.mjs +2 -0
- package/dist/card/index.mjs.map +1 -0
- package/dist/checkbox/index.d.ts +7 -0
- package/dist/checkbox/index.mjs +2 -0
- package/dist/checkbox/index.mjs.map +1 -0
- package/dist/chunks/TextWrap-apUajb0q.mjs +2 -0
- package/dist/chunks/TextWrap-apUajb0q.mjs.map +1 -0
- package/dist/chunks/accordion-CQGSj-IW.mjs +2 -0
- package/dist/chunks/accordion-CQGSj-IW.mjs.map +1 -0
- package/dist/chunks/bundle-mjs-CtG6Smj_.mjs +2 -0
- package/dist/chunks/bundle-mjs-CtG6Smj_.mjs.map +1 -0
- package/dist/chunks/button-D_c_ntEX.mjs +2 -0
- package/dist/chunks/button-D_c_ntEX.mjs.map +1 -0
- package/dist/chunks/check-DjRtCxG6.mjs +2 -0
- package/dist/chunks/check-DjRtCxG6.mjs.map +1 -0
- package/dist/chunks/chevron-down-BCzo9yB2.mjs +2 -0
- package/dist/chunks/chevron-down-BCzo9yB2.mjs.map +1 -0
- package/dist/chunks/chevron-left-DUJqO1vN.mjs +2 -0
- package/dist/chunks/chevron-left-DUJqO1vN.mjs.map +1 -0
- package/dist/chunks/chevron-right-CoNJE7ZW.mjs +2 -0
- package/dist/chunks/chevron-right-CoNJE7ZW.mjs.map +1 -0
- package/dist/chunks/command-eoEJKrZQ.mjs +2 -0
- package/dist/chunks/command-eoEJKrZQ.mjs.map +1 -0
- package/dist/chunks/createLucideIcon-CIn9dHnW.mjs +14 -0
- package/dist/chunks/createLucideIcon-CIn9dHnW.mjs.map +1 -0
- package/dist/chunks/dialog-TKsk0Iu2.mjs +2 -0
- package/dist/chunks/dialog-TKsk0Iu2.mjs.map +1 -0
- package/dist/chunks/index-B98y16WE.mjs +2 -0
- package/dist/chunks/index-B98y16WE.mjs.map +1 -0
- package/dist/chunks/index-BpJwNLRW.mjs +2 -0
- package/dist/chunks/index-BpJwNLRW.mjs.map +1 -0
- package/dist/chunks/index-C598HM8V.mjs +2 -0
- package/dist/chunks/index-C598HM8V.mjs.map +1 -0
- package/dist/chunks/index-CCYyT_rk.mjs +2 -0
- package/dist/chunks/index-CCYyT_rk.mjs.map +1 -0
- package/dist/chunks/index-CX5r7IKM.mjs +2 -0
- package/dist/chunks/index-CX5r7IKM.mjs.map +1 -0
- package/dist/chunks/index-CXrD_SvM.mjs +2 -0
- package/dist/chunks/index-CXrD_SvM.mjs.map +1 -0
- package/dist/chunks/index-ChLuxn93.mjs +2 -0
- package/dist/chunks/index-ChLuxn93.mjs.map +1 -0
- package/dist/chunks/index-CluuXDB_.mjs +2 -0
- package/dist/chunks/index-CluuXDB_.mjs.map +1 -0
- package/dist/chunks/index-D-s-TbR3.mjs +2 -0
- package/dist/chunks/index-D-s-TbR3.mjs.map +1 -0
- package/dist/chunks/index-DOx7g1Qo.mjs +2 -0
- package/dist/chunks/index-DOx7g1Qo.mjs.map +1 -0
- package/dist/chunks/index-Db2NO0t8.mjs +2 -0
- package/dist/chunks/index-Db2NO0t8.mjs.map +1 -0
- package/dist/chunks/index-DxtdpBCb.mjs +2 -0
- package/dist/chunks/index-DxtdpBCb.mjs.map +1 -0
- package/dist/chunks/index-DzMQps4Q.mjs +2 -0
- package/dist/chunks/index-DzMQps4Q.mjs.map +1 -0
- package/dist/chunks/input-BxTp3Q5l.mjs +2 -0
- package/dist/chunks/input-BxTp3Q5l.mjs.map +1 -0
- package/dist/chunks/label-BhQUf4a7.mjs +2 -0
- package/dist/chunks/label-BhQUf4a7.mjs.map +1 -0
- package/dist/chunks/pagination-qTGmkoRO.mjs +2 -0
- package/dist/chunks/pagination-qTGmkoRO.mjs.map +1 -0
- package/dist/chunks/popover-DDPhp0Sa.mjs +2 -0
- package/dist/chunks/popover-DDPhp0Sa.mjs.map +1 -0
- package/dist/chunks/progress-C_yWLgAi.mjs +2 -0
- package/dist/chunks/progress-C_yWLgAi.mjs.map +1 -0
- package/dist/chunks/scroll-area-CuX49k8h.mjs +2 -0
- package/dist/chunks/scroll-area-CuX49k8h.mjs.map +1 -0
- package/dist/chunks/select-BydKi4E_.mjs +2 -0
- package/dist/chunks/select-BydKi4E_.mjs.map +1 -0
- package/dist/chunks/skeleton-BFnps3wE.mjs +2 -0
- package/dist/chunks/skeleton-BFnps3wE.mjs.map +1 -0
- package/dist/chunks/sortable-7DK1K35h.mjs +2 -0
- package/dist/chunks/sortable-7DK1K35h.mjs.map +1 -0
- package/dist/chunks/table-DRvqJktC.mjs +2 -0
- package/dist/chunks/table-DRvqJktC.mjs.map +1 -0
- package/dist/chunks/tslib.es6-Cx3xzITX.mjs +2 -0
- package/dist/chunks/tslib.es6-Cx3xzITX.mjs.map +1 -0
- package/dist/chunks/utils-jIFl11as.mjs +2 -0
- package/dist/chunks/utils-jIFl11as.mjs.map +1 -0
- package/dist/chunks/x-xnz0lTd-.mjs +2 -0
- package/dist/chunks/x-xnz0lTd-.mjs.map +1 -0
- package/dist/command/index.d.ts +20 -0
- package/dist/command/index.mjs +2 -0
- package/dist/command/index.mjs.map +1 -0
- package/dist/data-table/index.d.ts +124 -0
- package/dist/data-table/index.mjs +2 -0
- package/dist/data-table/index.mjs.map +1 -0
- package/dist/dialog/index.d.ts +16 -0
- package/dist/dialog/index.mjs +2 -0
- package/dist/dialog/index.mjs.map +1 -0
- package/dist/dropdown-menu/index.d.ts +28 -0
- package/dist/dropdown-menu/index.mjs +2 -0
- package/dist/dropdown-menu/index.mjs.map +1 -0
- package/dist/dropzone/index.d.ts +84 -0
- package/dist/dropzone/index.mjs +7 -0
- package/dist/dropzone/index.mjs.map +1 -0
- package/dist/form/index.d.ts +28 -0
- package/dist/form/index.mjs +2 -0
- package/dist/form/index.mjs.map +1 -0
- package/dist/icon/index.d.ts +16 -0
- package/dist/icon/index.mjs +2 -0
- package/dist/icon/index.mjs.map +1 -0
- package/dist/index/index.d.ts +2 -0
- package/dist/index/index.mjs +2 -0
- package/dist/index/index.mjs.map +1 -0
- package/dist/index.css +7 -0
- package/dist/input/index.d.ts +6 -0
- package/dist/input/index.mjs +2 -0
- package/dist/input/index.mjs.map +1 -0
- package/dist/label/index.d.ts +7 -0
- package/dist/label/index.mjs +2 -0
- package/dist/label/index.mjs.map +1 -0
- package/dist/pagination/index.d.ts +18 -0
- package/dist/pagination/index.mjs +2 -0
- package/dist/pagination/index.mjs.map +1 -0
- package/dist/popover/index.d.ts +10 -0
- package/dist/popover/index.mjs +2 -0
- package/dist/popover/index.mjs.map +1 -0
- package/dist/progress/index.d.ts +7 -0
- package/dist/progress/index.mjs +2 -0
- package/dist/progress/index.mjs.map +1 -0
- package/dist/scroll-area/index.d.ts +8 -0
- package/dist/scroll-area/index.mjs +2 -0
- package/dist/scroll-area/index.mjs.map +1 -0
- package/dist/select/index.d.ts +16 -0
- package/dist/select/index.mjs +2 -0
- package/dist/select/index.mjs.map +1 -0
- package/dist/separator/index.d.ts +7 -0
- package/dist/separator/index.mjs +2 -0
- package/dist/separator/index.mjs.map +1 -0
- package/dist/sheet/index.d.ts +16 -0
- package/dist/sheet/index.mjs +2 -0
- package/dist/sheet/index.mjs.map +1 -0
- package/dist/skeleton/index.d.ts +6 -0
- package/dist/skeleton/index.mjs +2 -0
- package/dist/skeleton/index.mjs.map +1 -0
- package/dist/sortable/index.d.ts +109 -0
- package/dist/sortable/index.mjs +2 -0
- package/dist/sortable/index.mjs.map +1 -0
- package/dist/table/index.d.ts +13 -0
- package/dist/table/index.mjs +2 -0
- package/dist/table/index.mjs.map +1 -0
- package/dist/tabs/index.d.ts +10 -0
- package/dist/tabs/index.mjs +2 -0
- package/dist/tabs/index.mjs.map +1 -0
- package/dist/toast/index.d.ts +20 -0
- package/dist/toast/index.mjs +2 -0
- package/dist/toast/index.mjs.map +1 -0
- package/dist/tooltip/index.d.ts +10 -0
- package/dist/tooltip/index.mjs +2 -0
- package/dist/tooltip/index.mjs.map +1 -0
- package/package.json +1 -1
@@ -0,0 +1,2 @@
|
|
1
|
+
import*as e from"react";import{P as r}from"./index-DxtdpBCb.mjs";import{u as t,P as o,c as n,a as l,b as i}from"./index-CX5r7IKM.mjs";import{c as a}from"./index-CCYyT_rk.mjs";import{u as s}from"./index-BpJwNLRW.mjs";import{jsx as c,jsxs as d,Fragment as u}from"react/jsx-runtime";import{c as p}from"./utils-jIFl11as.mjs";var f="ScrollArea",[h,v]=a(f),[w,m]=h(f),b=e.forwardRef(((o,n)=>{const{__scopeScrollArea:l,type:i="hover",dir:a,scrollHideDelay:d=600,...u}=o,[p,f]=e.useState(null),[h,v]=e.useState(null),[m,b]=e.useState(null),[g,S]=e.useState(null),[E,y]=e.useState(null),[T,C]=e.useState(0),[R,P]=e.useState(0),[_,x]=e.useState(!1),[L,D]=e.useState(!1),A=t(n,(e=>f(e))),z=s(a);return c(w,{scope:l,type:i,dir:z,scrollHideDelay:d,scrollArea:p,viewport:h,onViewportChange:v,content:m,onContentChange:b,scrollbarX:g,onScrollbarXChange:S,scrollbarXEnabled:_,onScrollbarXEnabledChange:x,scrollbarY:E,onScrollbarYChange:y,scrollbarYEnabled:L,onScrollbarYEnabledChange:D,onCornerWidthChange:C,onCornerHeightChange:P,children:c(r.div,{dir:z,...u,ref:A,style:{position:"relative","--radix-scroll-area-corner-width":T+"px","--radix-scroll-area-corner-height":R+"px",...o.style}})})}));b.displayName=f;var g="ScrollAreaViewport",S=e.forwardRef(((o,n)=>{const{__scopeScrollArea:l,children:i,nonce:a,...s}=o,p=m(g,l),f=e.useRef(null),h=t(n,f,p.onViewportChange);return d(u,{children:[c("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:a}),c(r.div,{"data-radix-scroll-area-viewport":"",...s,ref:h,style:{overflowX:p.scrollbarXEnabled?"scroll":"hidden",overflowY:p.scrollbarYEnabled?"scroll":"hidden",...o.style},children:c("div",{ref:p.onContentChange,style:{minWidth:"100%",display:"table"},children:i})})]})}));S.displayName=g;var E="ScrollAreaScrollbar",y=e.forwardRef(((r,t)=>{const{forceMount:o,...n}=r,l=m(E,r.__scopeScrollArea),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:a}=l,s="horizontal"===r.orientation;return e.useEffect((()=>(s?i(!0):a(!0),()=>{s?i(!1):a(!1)})),[s,i,a]),"hover"===l.type?c(T,{...n,ref:t,forceMount:o}):"scroll"===l.type?c(C,{...n,ref:t,forceMount:o}):"auto"===l.type?c(R,{...n,ref:t,forceMount:o}):"always"===l.type?c(P,{...n,ref:t}):null}));y.displayName=E;var T=e.forwardRef(((r,t)=>{const{forceMount:n,...l}=r,i=m(E,r.__scopeScrollArea),[a,s]=e.useState(!1);return e.useEffect((()=>{const e=i.scrollArea;let r=0;if(e){const t=()=>{window.clearTimeout(r),s(!0)},o=()=>{r=window.setTimeout((()=>s(!1)),i.scrollHideDelay)};return e.addEventListener("pointerenter",t),e.addEventListener("pointerleave",o),()=>{window.clearTimeout(r),e.removeEventListener("pointerenter",t),e.removeEventListener("pointerleave",o)}}}),[i.scrollArea,i.scrollHideDelay]),c(o,{present:n||a,children:c(R,{"data-state":a?"visible":"hidden",...l,ref:t})})})),C=e.forwardRef(((r,t)=>{const{forceMount:l,...i}=r,a=m(E,r.__scopeScrollArea),s="horizontal"===r.orientation,d=F((()=>p("SCROLL_END")),100),[u,p]=(f="hidden",h={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},e.useReducer(((e,r)=>h[e][r]??e),f));var f,h;return e.useEffect((()=>{if("idle"===u){const e=window.setTimeout((()=>p("HIDE")),a.scrollHideDelay);return()=>window.clearTimeout(e)}}),[u,a.scrollHideDelay,p]),e.useEffect((()=>{const e=a.viewport,r=s?"scrollLeft":"scrollTop";if(e){let t=e[r];const o=()=>{const o=e[r];t!==o&&(p("SCROLL"),d()),t=o};return e.addEventListener("scroll",o),()=>e.removeEventListener("scroll",o)}}),[a.viewport,s,p,d]),c(o,{present:l||"hidden"!==u,children:c(P,{"data-state":"hidden"===u?"hidden":"visible",...i,ref:t,onPointerEnter:n(r.onPointerEnter,(()=>p("POINTER_ENTER"))),onPointerLeave:n(r.onPointerLeave,(()=>p("POINTER_LEAVE")))})})})),R=e.forwardRef(((r,t)=>{const n=m(E,r.__scopeScrollArea),{forceMount:l,...i}=r,[a,s]=e.useState(!1),d="horizontal"===r.orientation,u=F((()=>{if(n.viewport){const e=n.viewport.offsetWidth<n.viewport.scrollWidth,r=n.viewport.offsetHeight<n.viewport.scrollHeight;s(d?e:r)}}),10);return V(n.viewport,u),V(n.content,u),c(o,{present:l||a,children:c(P,{"data-state":a?"visible":"hidden",...i,ref:t})})})),P=e.forwardRef(((r,t)=>{const{orientation:o="vertical",...n}=r,l=m(E,r.__scopeScrollArea),i=e.useRef(null),a=e.useRef(0),[s,d]=e.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=I(s.viewport,s.content),p={...n,sizes:s,onSizesChange:d,hasThumb:Boolean(u>0&&u<1),onThumbChange:e=>i.current=e,onThumbPointerUp:()=>a.current=0,onThumbPointerDown:e=>a.current=e};function f(e,r){return function(e,r,t,o="ltr"){const n=O(t),l=n/2,i=r||l,a=n-i,s=t.scrollbar.paddingStart+i,c=t.scrollbar.size-t.scrollbar.paddingEnd-a,d=t.content-t.viewport,u="ltr"===o?[0,d]:[-1*d,0];return k([s,c],u)(e)}(e,a.current,s,r)}return"horizontal"===o?c(_,{...p,ref:t,onThumbPositionChange:()=>{if(l.viewport&&i.current){const e=U(l.viewport.scrollLeft,s,l.dir);i.current.style.transform=`translate3d(${e}px, 0, 0)`}},onWheelScroll:e=>{l.viewport&&(l.viewport.scrollLeft=e)},onDragScroll:e=>{l.viewport&&(l.viewport.scrollLeft=f(e,l.dir))}}):"vertical"===o?c(x,{...p,ref:t,onThumbPositionChange:()=>{if(l.viewport&&i.current){const e=U(l.viewport.scrollTop,s);i.current.style.transform=`translate3d(0, ${e}px, 0)`}},onWheelScroll:e=>{l.viewport&&(l.viewport.scrollTop=e)},onDragScroll:e=>{l.viewport&&(l.viewport.scrollTop=f(e))}}):null})),_=e.forwardRef(((r,o)=>{const{sizes:n,onSizesChange:l,...i}=r,a=m(E,r.__scopeScrollArea),[s,d]=e.useState(),u=e.useRef(null),p=t(o,u,a.onScrollbarXChange);return e.useEffect((()=>{u.current&&d(getComputedStyle(u.current))}),[u]),c(A,{"data-orientation":"horizontal",...i,ref:p,sizes:n,style:{bottom:0,left:"rtl"===a.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===a.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":O(n)+"px",...r.style},onThumbPointerDown:e=>r.onThumbPointerDown(e.x),onDragScroll:e=>r.onDragScroll(e.x),onWheelScroll:(e,t)=>{if(a.viewport){const o=a.viewport.scrollLeft+e.deltaX;r.onWheelScroll(o),B(o,t)&&e.preventDefault()}},onResize:()=>{u.current&&a.viewport&&s&&l({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:u.current.clientWidth,paddingStart:Y(s.paddingLeft),paddingEnd:Y(s.paddingRight)}})}})})),x=e.forwardRef(((r,o)=>{const{sizes:n,onSizesChange:l,...i}=r,a=m(E,r.__scopeScrollArea),[s,d]=e.useState(),u=e.useRef(null),p=t(o,u,a.onScrollbarYChange);return e.useEffect((()=>{u.current&&d(getComputedStyle(u.current))}),[u]),c(A,{"data-orientation":"vertical",...i,ref:p,sizes:n,style:{top:0,right:"ltr"===a.dir?0:void 0,left:"rtl"===a.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":O(n)+"px",...r.style},onThumbPointerDown:e=>r.onThumbPointerDown(e.y),onDragScroll:e=>r.onDragScroll(e.y),onWheelScroll:(e,t)=>{if(a.viewport){const o=a.viewport.scrollTop+e.deltaY;r.onWheelScroll(o),B(o,t)&&e.preventDefault()}},onResize:()=>{u.current&&a.viewport&&s&&l({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:u.current.clientHeight,paddingStart:Y(s.paddingTop),paddingEnd:Y(s.paddingBottom)}})}})})),[L,D]=h(E),A=e.forwardRef(((o,i)=>{const{__scopeScrollArea:a,sizes:s,hasThumb:d,onThumbChange:u,onThumbPointerUp:p,onThumbPointerDown:f,onThumbPositionChange:h,onDragScroll:v,onWheelScroll:w,onResize:b,...g}=o,S=m(E,a),[y,T]=e.useState(null),C=t(i,(e=>T(e))),R=e.useRef(null),P=e.useRef(""),_=S.viewport,x=s.content-s.viewport,D=l(w),A=l(h),z=F(b,10);function N(e){if(R.current){const r=e.clientX-R.current.left,t=e.clientY-R.current.top;v({x:r,y:t})}}return e.useEffect((()=>{const e=e=>{const r=e.target,t=y?.contains(r);t&&D(e,x)};return document.addEventListener("wheel",e,{passive:!1}),()=>document.removeEventListener("wheel",e,{passive:!1})}),[_,y,x,D]),e.useEffect(A,[s,A]),V(y,z),V(S.content,z),c(L,{scope:a,scrollbar:y,hasThumb:d,onThumbChange:l(u),onThumbPointerUp:l(p),onThumbPositionChange:A,onThumbPointerDown:l(f),children:c(r.div,{...g,ref:C,style:{position:"absolute",...g.style},onPointerDown:n(o.onPointerDown,(e=>{if(0===e.button){e.target.setPointerCapture(e.pointerId),R.current=y.getBoundingClientRect(),P.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",S.viewport&&(S.viewport.style.scrollBehavior="auto"),N(e)}})),onPointerMove:n(o.onPointerMove,N),onPointerUp:n(o.onPointerUp,(e=>{const r=e.target;r.hasPointerCapture(e.pointerId)&&r.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=P.current,S.viewport&&(S.viewport.style.scrollBehavior=""),R.current=null}))})})})),z="ScrollAreaThumb",N=e.forwardRef(((e,r)=>{const{forceMount:t,...n}=e,l=D(z,e.__scopeScrollArea);return c(o,{present:t||l.hasThumb,children:c(H,{ref:r,...n})})})),H=e.forwardRef(((o,l)=>{const{__scopeScrollArea:i,style:a,...s}=o,d=m(z,i),u=D(z,i),{onThumbPositionChange:p}=u,f=t(l,(e=>u.onThumbChange(e))),h=e.useRef(void 0),v=F((()=>{h.current&&(h.current(),h.current=void 0)}),100);return e.useEffect((()=>{const e=d.viewport;if(e){const r=()=>{if(v(),!h.current){const r=j(e,p);h.current=r,p()}};return p(),e.addEventListener("scroll",r),()=>e.removeEventListener("scroll",r)}}),[d.viewport,v,p]),c(r.div,{"data-state":u.hasThumb?"visible":"hidden",...s,ref:f,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...a},onPointerDownCapture:n(o.onPointerDownCapture,(e=>{const r=e.target.getBoundingClientRect(),t=e.clientX-r.left,o=e.clientY-r.top;u.onThumbPointerDown({x:t,y:o})})),onPointerUp:n(o.onPointerUp,u.onThumbPointerUp)})}));N.displayName=z;var W="ScrollAreaCorner",M=e.forwardRef(((e,r)=>{const t=m(W,e.__scopeScrollArea),o=Boolean(t.scrollbarX&&t.scrollbarY);return"scroll"!==t.type&&o?c(X,{...e,ref:r}):null}));M.displayName=W;var X=e.forwardRef(((t,o)=>{const{__scopeScrollArea:n,...l}=t,i=m(W,n),[a,s]=e.useState(0),[d,u]=e.useState(0),p=Boolean(a&&d);return V(i.scrollbarX,(()=>{const e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),u(e)})),V(i.scrollbarY,(()=>{const e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),s(e)})),p?c(r.div,{...l,ref:o,style:{width:a,height:d,position:"absolute",right:"ltr"===i.dir?0:void 0,left:"rtl"===i.dir?0:void 0,bottom:0,...t.style}}):null}));function Y(e){return e?parseInt(e,10):0}function I(e,r){const t=e/r;return isNaN(t)?0:t}function O(e){const r=I(e.viewport,e.content),t=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-t)*r;return Math.max(o,18)}function U(e,r,t="ltr"){const o=O(r),n=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,l=r.scrollbar.size-n,i=r.content-r.viewport,a=l-o,s=function(e,[r,t]){return Math.min(t,Math.max(r,e))}(e,"ltr"===t?[0,i]:[-1*i,0]);return k([0,i],[0,a])(s)}function k(e,r){return t=>{if(e[0]===e[1]||r[0]===r[1])return r[0];const o=(r[1]-r[0])/(e[1]-e[0]);return r[0]+o*(t-e[0])}}function B(e,r){return e>0&&e<r}var j=(e,r=()=>{})=>{let t={left:e.scrollLeft,top:e.scrollTop},o=0;return function n(){const l={left:e.scrollLeft,top:e.scrollTop},i=t.left!==l.left,a=t.top!==l.top;(i||a)&&r(),t=l,o=window.requestAnimationFrame(n)}(),()=>window.cancelAnimationFrame(o)};function F(r,t){const o=l(r),n=e.useRef(0);return e.useEffect((()=>()=>window.clearTimeout(n.current)),[]),e.useCallback((()=>{window.clearTimeout(n.current),n.current=window.setTimeout(o,t)}),[o,t])}function V(e,r){const t=l(r);i((()=>{let r=0;if(e){const o=new ResizeObserver((()=>{cancelAnimationFrame(r),r=window.requestAnimationFrame(t)}));return o.observe(e),()=>{window.cancelAnimationFrame(r),o.unobserve(e)}}}),[e,t])}var q=b,$=S,G=M;function J({className:r,children:t,...o}){return e.createElement(q,{"data-slot":"scroll-area",className:p("relative",r),...o},e.createElement($,{"data-slot":"scroll-area-viewport",className:"ring-ring/10 dark:ring-ring/20 dark:outline-ring/40 outline-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] focus-visible:ring-4 focus-visible:outline-1"},t),e.createElement(K,null),e.createElement(G,null))}function K({className:r,orientation:t="vertical",...o}){return e.createElement(y,{"data-slot":"scroll-area-scrollbar",orientation:t,className:p("flex touch-none p-px transition-colors select-none","vertical"===t&&"h-full w-2.5 border-l border-l-transparent","horizontal"===t&&"h-2.5 flex-col border-t border-t-transparent",r),...o},e.createElement(N,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"}))}export{J as S,K as a};
|
2
|
+
//# sourceMappingURL=scroll-area-CuX49k8h.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"scroll-area-CuX49k8h.mjs","sources":["../../node_modules/@radix-ui/react-scroll-area/dist/index.mjs","../../node_modules/@radix-ui/number/dist/index.mjs","../../src/components/ui/scroll-area/scroll-area.tsx"],"sourcesContent":["\"use client\";\n\n// packages/react/scroll-area/src/scroll-area.tsx\nimport * as React2 from \"react\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { clamp } from \"@radix-ui/number\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\n\n// packages/react/scroll-area/src/use-state-machine.ts\nimport * as React from \"react\";\nfunction useStateMachine(initialState, machine) {\n return React.useReducer((state, event) => {\n const nextState = machine[state][event];\n return nextState ?? state;\n }, initialState);\n}\n\n// packages/react/scroll-area/src/scroll-area.tsx\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar SCROLL_AREA_NAME = \"ScrollArea\";\nvar [createScrollAreaContext, createScrollAreaScope] = createContextScope(SCROLL_AREA_NAME);\nvar [ScrollAreaProvider, useScrollAreaContext] = createScrollAreaContext(SCROLL_AREA_NAME);\nvar ScrollArea = React2.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeScrollArea,\n type = \"hover\",\n dir,\n scrollHideDelay = 600,\n ...scrollAreaProps\n } = props;\n const [scrollArea, setScrollArea] = React2.useState(null);\n const [viewport, setViewport] = React2.useState(null);\n const [content, setContent] = React2.useState(null);\n const [scrollbarX, setScrollbarX] = React2.useState(null);\n const [scrollbarY, setScrollbarY] = React2.useState(null);\n const [cornerWidth, setCornerWidth] = React2.useState(0);\n const [cornerHeight, setCornerHeight] = React2.useState(0);\n const [scrollbarXEnabled, setScrollbarXEnabled] = React2.useState(false);\n const [scrollbarYEnabled, setScrollbarYEnabled] = React2.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setScrollArea(node));\n const direction = useDirection(dir);\n return /* @__PURE__ */ jsx(\n ScrollAreaProvider,\n {\n scope: __scopeScrollArea,\n type,\n dir: direction,\n scrollHideDelay,\n scrollArea,\n viewport,\n onViewportChange: setViewport,\n content,\n onContentChange: setContent,\n scrollbarX,\n onScrollbarXChange: setScrollbarX,\n scrollbarXEnabled,\n onScrollbarXEnabledChange: setScrollbarXEnabled,\n scrollbarY,\n onScrollbarYChange: setScrollbarY,\n scrollbarYEnabled,\n onScrollbarYEnabledChange: setScrollbarYEnabled,\n onCornerWidthChange: setCornerWidth,\n onCornerHeightChange: setCornerHeight,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n ...scrollAreaProps,\n ref: composedRefs,\n style: {\n position: \"relative\",\n // Pass corner sizes as CSS vars to reduce re-renders of context consumers\n [\"--radix-scroll-area-corner-width\"]: cornerWidth + \"px\",\n [\"--radix-scroll-area-corner-height\"]: cornerHeight + \"px\",\n ...props.style\n }\n }\n )\n }\n );\n }\n);\nScrollArea.displayName = SCROLL_AREA_NAME;\nvar VIEWPORT_NAME = \"ScrollAreaViewport\";\nvar ScrollAreaViewport = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeScrollArea, children, nonce, ...viewportProps } = props;\n const context = useScrollAreaContext(VIEWPORT_NAME, __scopeScrollArea);\n const ref = React2.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref, context.onViewportChange);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n \"style\",\n {\n dangerouslySetInnerHTML: {\n __html: `[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`\n },\n nonce\n }\n ),\n /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-radix-scroll-area-viewport\": \"\",\n ...viewportProps,\n ref: composedRefs,\n style: {\n /**\n * We don't support `visible` because the intention is to have at least one scrollbar\n * if this component is used and `visible` will behave like `auto` in that case\n * https://developer.mozilla.org/en-US/docs/Web/CSS/overflow#description\n *\n * We don't handle `auto` because the intention is for the native implementation\n * to be hidden if using this component. We just want to ensure the node is scrollable\n * so could have used either `scroll` or `auto` here. We picked `scroll` to prevent\n * the browser from having to work out whether to render native scrollbars or not,\n * we tell it to with the intention of hiding them in CSS.\n */\n overflowX: context.scrollbarXEnabled ? \"scroll\" : \"hidden\",\n overflowY: context.scrollbarYEnabled ? \"scroll\" : \"hidden\",\n ...props.style\n },\n children: /* @__PURE__ */ jsx(\"div\", { ref: context.onContentChange, style: { minWidth: \"100%\", display: \"table\" }, children })\n }\n )\n ] });\n }\n);\nScrollAreaViewport.displayName = VIEWPORT_NAME;\nvar SCROLLBAR_NAME = \"ScrollAreaScrollbar\";\nvar ScrollAreaScrollbar = React2.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const { onScrollbarXEnabledChange, onScrollbarYEnabledChange } = context;\n const isHorizontal = props.orientation === \"horizontal\";\n React2.useEffect(() => {\n isHorizontal ? onScrollbarXEnabledChange(true) : onScrollbarYEnabledChange(true);\n return () => {\n isHorizontal ? onScrollbarXEnabledChange(false) : onScrollbarYEnabledChange(false);\n };\n }, [isHorizontal, onScrollbarXEnabledChange, onScrollbarYEnabledChange]);\n return context.type === \"hover\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarHover, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"scroll\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarScroll, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"auto\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarAuto, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"always\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarVisible, { ...scrollbarProps, ref: forwardedRef }) : null;\n }\n);\nScrollAreaScrollbar.displayName = SCROLLBAR_NAME;\nvar ScrollAreaScrollbarHover = React2.forwardRef((props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [visible, setVisible] = React2.useState(false);\n React2.useEffect(() => {\n const scrollArea = context.scrollArea;\n let hideTimer = 0;\n if (scrollArea) {\n const handlePointerEnter = () => {\n window.clearTimeout(hideTimer);\n setVisible(true);\n };\n const handlePointerLeave = () => {\n hideTimer = window.setTimeout(() => setVisible(false), context.scrollHideDelay);\n };\n scrollArea.addEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.addEventListener(\"pointerleave\", handlePointerLeave);\n return () => {\n window.clearTimeout(hideTimer);\n scrollArea.removeEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.removeEventListener(\"pointerleave\", handlePointerLeave);\n };\n }\n }, [context.scrollArea, context.scrollHideDelay]);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || visible, children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarAuto,\n {\n \"data-state\": visible ? \"visible\" : \"hidden\",\n ...scrollbarProps,\n ref: forwardedRef\n }\n ) });\n});\nvar ScrollAreaScrollbarScroll = React2.forwardRef((props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const isHorizontal = props.orientation === \"horizontal\";\n const debounceScrollEnd = useDebounceCallback(() => send(\"SCROLL_END\"), 100);\n const [state, send] = useStateMachine(\"hidden\", {\n hidden: {\n SCROLL: \"scrolling\"\n },\n scrolling: {\n SCROLL_END: \"idle\",\n POINTER_ENTER: \"interacting\"\n },\n interacting: {\n SCROLL: \"interacting\",\n POINTER_LEAVE: \"idle\"\n },\n idle: {\n HIDE: \"hidden\",\n SCROLL: \"scrolling\",\n POINTER_ENTER: \"interacting\"\n }\n });\n React2.useEffect(() => {\n if (state === \"idle\") {\n const hideTimer = window.setTimeout(() => send(\"HIDE\"), context.scrollHideDelay);\n return () => window.clearTimeout(hideTimer);\n }\n }, [state, context.scrollHideDelay, send]);\n React2.useEffect(() => {\n const viewport = context.viewport;\n const scrollDirection = isHorizontal ? \"scrollLeft\" : \"scrollTop\";\n if (viewport) {\n let prevScrollPos = viewport[scrollDirection];\n const handleScroll = () => {\n const scrollPos = viewport[scrollDirection];\n const hasScrollInDirectionChanged = prevScrollPos !== scrollPos;\n if (hasScrollInDirectionChanged) {\n send(\"SCROLL\");\n debounceScrollEnd();\n }\n prevScrollPos = scrollPos;\n };\n viewport.addEventListener(\"scroll\", handleScroll);\n return () => viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [context.viewport, isHorizontal, send, debounceScrollEnd]);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || state !== \"hidden\", children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarVisible,\n {\n \"data-state\": state === \"hidden\" ? \"hidden\" : \"visible\",\n ...scrollbarProps,\n ref: forwardedRef,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, () => send(\"POINTER_ENTER\")),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, () => send(\"POINTER_LEAVE\"))\n }\n ) });\n});\nvar ScrollAreaScrollbarAuto = React2.forwardRef((props, forwardedRef) => {\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const { forceMount, ...scrollbarProps } = props;\n const [visible, setVisible] = React2.useState(false);\n const isHorizontal = props.orientation === \"horizontal\";\n const handleResize = useDebounceCallback(() => {\n if (context.viewport) {\n const isOverflowX = context.viewport.offsetWidth < context.viewport.scrollWidth;\n const isOverflowY = context.viewport.offsetHeight < context.viewport.scrollHeight;\n setVisible(isHorizontal ? isOverflowX : isOverflowY);\n }\n }, 10);\n useResizeObserver(context.viewport, handleResize);\n useResizeObserver(context.content, handleResize);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || visible, children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarVisible,\n {\n \"data-state\": visible ? \"visible\" : \"hidden\",\n ...scrollbarProps,\n ref: forwardedRef\n }\n ) });\n});\nvar ScrollAreaScrollbarVisible = React2.forwardRef((props, forwardedRef) => {\n const { orientation = \"vertical\", ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const thumbRef = React2.useRef(null);\n const pointerOffsetRef = React2.useRef(0);\n const [sizes, setSizes] = React2.useState({\n content: 0,\n viewport: 0,\n scrollbar: { size: 0, paddingStart: 0, paddingEnd: 0 }\n });\n const thumbRatio = getThumbRatio(sizes.viewport, sizes.content);\n const commonProps = {\n ...scrollbarProps,\n sizes,\n onSizesChange: setSizes,\n hasThumb: Boolean(thumbRatio > 0 && thumbRatio < 1),\n onThumbChange: (thumb) => thumbRef.current = thumb,\n onThumbPointerUp: () => pointerOffsetRef.current = 0,\n onThumbPointerDown: (pointerPos) => pointerOffsetRef.current = pointerPos\n };\n function getScrollPosition(pointerPos, dir) {\n return getScrollPositionFromPointer(pointerPos, pointerOffsetRef.current, sizes, dir);\n }\n if (orientation === \"horizontal\") {\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarX,\n {\n ...commonProps,\n ref: forwardedRef,\n onThumbPositionChange: () => {\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollLeft;\n const offset = getThumbOffsetFromScroll(scrollPos, sizes, context.dir);\n thumbRef.current.style.transform = `translate3d(${offset}px, 0, 0)`;\n }\n },\n onWheelScroll: (scrollPos) => {\n if (context.viewport) context.viewport.scrollLeft = scrollPos;\n },\n onDragScroll: (pointerPos) => {\n if (context.viewport) {\n context.viewport.scrollLeft = getScrollPosition(pointerPos, context.dir);\n }\n }\n }\n );\n }\n if (orientation === \"vertical\") {\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarY,\n {\n ...commonProps,\n ref: forwardedRef,\n onThumbPositionChange: () => {\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollTop;\n const offset = getThumbOffsetFromScroll(scrollPos, sizes);\n thumbRef.current.style.transform = `translate3d(0, ${offset}px, 0)`;\n }\n },\n onWheelScroll: (scrollPos) => {\n if (context.viewport) context.viewport.scrollTop = scrollPos;\n },\n onDragScroll: (pointerPos) => {\n if (context.viewport) context.viewport.scrollTop = getScrollPosition(pointerPos);\n }\n }\n );\n }\n return null;\n});\nvar ScrollAreaScrollbarX = React2.forwardRef((props, forwardedRef) => {\n const { sizes, onSizesChange, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [computedStyle, setComputedStyle] = React2.useState();\n const ref = React2.useRef(null);\n const composeRefs = useComposedRefs(forwardedRef, ref, context.onScrollbarXChange);\n React2.useEffect(() => {\n if (ref.current) setComputedStyle(getComputedStyle(ref.current));\n }, [ref]);\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarImpl,\n {\n \"data-orientation\": \"horizontal\",\n ...scrollbarProps,\n ref: composeRefs,\n sizes,\n style: {\n bottom: 0,\n left: context.dir === \"rtl\" ? \"var(--radix-scroll-area-corner-width)\" : 0,\n right: context.dir === \"ltr\" ? \"var(--radix-scroll-area-corner-width)\" : 0,\n [\"--radix-scroll-area-thumb-width\"]: getThumbSize(sizes) + \"px\",\n ...props.style\n },\n onThumbPointerDown: (pointerPos) => props.onThumbPointerDown(pointerPos.x),\n onDragScroll: (pointerPos) => props.onDragScroll(pointerPos.x),\n onWheelScroll: (event, maxScrollPos) => {\n if (context.viewport) {\n const scrollPos = context.viewport.scrollLeft + event.deltaX;\n props.onWheelScroll(scrollPos);\n if (isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) {\n event.preventDefault();\n }\n }\n },\n onResize: () => {\n if (ref.current && context.viewport && computedStyle) {\n onSizesChange({\n content: context.viewport.scrollWidth,\n viewport: context.viewport.offsetWidth,\n scrollbar: {\n size: ref.current.clientWidth,\n paddingStart: toInt(computedStyle.paddingLeft),\n paddingEnd: toInt(computedStyle.paddingRight)\n }\n });\n }\n }\n }\n );\n});\nvar ScrollAreaScrollbarY = React2.forwardRef((props, forwardedRef) => {\n const { sizes, onSizesChange, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [computedStyle, setComputedStyle] = React2.useState();\n const ref = React2.useRef(null);\n const composeRefs = useComposedRefs(forwardedRef, ref, context.onScrollbarYChange);\n React2.useEffect(() => {\n if (ref.current) setComputedStyle(getComputedStyle(ref.current));\n }, [ref]);\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarImpl,\n {\n \"data-orientation\": \"vertical\",\n ...scrollbarProps,\n ref: composeRefs,\n sizes,\n style: {\n top: 0,\n right: context.dir === \"ltr\" ? 0 : void 0,\n left: context.dir === \"rtl\" ? 0 : void 0,\n bottom: \"var(--radix-scroll-area-corner-height)\",\n [\"--radix-scroll-area-thumb-height\"]: getThumbSize(sizes) + \"px\",\n ...props.style\n },\n onThumbPointerDown: (pointerPos) => props.onThumbPointerDown(pointerPos.y),\n onDragScroll: (pointerPos) => props.onDragScroll(pointerPos.y),\n onWheelScroll: (event, maxScrollPos) => {\n if (context.viewport) {\n const scrollPos = context.viewport.scrollTop + event.deltaY;\n props.onWheelScroll(scrollPos);\n if (isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) {\n event.preventDefault();\n }\n }\n },\n onResize: () => {\n if (ref.current && context.viewport && computedStyle) {\n onSizesChange({\n content: context.viewport.scrollHeight,\n viewport: context.viewport.offsetHeight,\n scrollbar: {\n size: ref.current.clientHeight,\n paddingStart: toInt(computedStyle.paddingTop),\n paddingEnd: toInt(computedStyle.paddingBottom)\n }\n });\n }\n }\n }\n );\n});\nvar [ScrollbarProvider, useScrollbarContext] = createScrollAreaContext(SCROLLBAR_NAME);\nvar ScrollAreaScrollbarImpl = React2.forwardRef((props, forwardedRef) => {\n const {\n __scopeScrollArea,\n sizes,\n hasThumb,\n onThumbChange,\n onThumbPointerUp,\n onThumbPointerDown,\n onThumbPositionChange,\n onDragScroll,\n onWheelScroll,\n onResize,\n ...scrollbarProps\n } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, __scopeScrollArea);\n const [scrollbar, setScrollbar] = React2.useState(null);\n const composeRefs = useComposedRefs(forwardedRef, (node) => setScrollbar(node));\n const rectRef = React2.useRef(null);\n const prevWebkitUserSelectRef = React2.useRef(\"\");\n const viewport = context.viewport;\n const maxScrollPos = sizes.content - sizes.viewport;\n const handleWheelScroll = useCallbackRef(onWheelScroll);\n const handleThumbPositionChange = useCallbackRef(onThumbPositionChange);\n const handleResize = useDebounceCallback(onResize, 10);\n function handleDragScroll(event) {\n if (rectRef.current) {\n const x = event.clientX - rectRef.current.left;\n const y = event.clientY - rectRef.current.top;\n onDragScroll({ x, y });\n }\n }\n React2.useEffect(() => {\n const handleWheel = (event) => {\n const element = event.target;\n const isScrollbarWheel = scrollbar?.contains(element);\n if (isScrollbarWheel) handleWheelScroll(event, maxScrollPos);\n };\n document.addEventListener(\"wheel\", handleWheel, { passive: false });\n return () => document.removeEventListener(\"wheel\", handleWheel, { passive: false });\n }, [viewport, scrollbar, maxScrollPos, handleWheelScroll]);\n React2.useEffect(handleThumbPositionChange, [sizes, handleThumbPositionChange]);\n useResizeObserver(scrollbar, handleResize);\n useResizeObserver(context.content, handleResize);\n return /* @__PURE__ */ jsx(\n ScrollbarProvider,\n {\n scope: __scopeScrollArea,\n scrollbar,\n hasThumb,\n onThumbChange: useCallbackRef(onThumbChange),\n onThumbPointerUp: useCallbackRef(onThumbPointerUp),\n onThumbPositionChange: handleThumbPositionChange,\n onThumbPointerDown: useCallbackRef(onThumbPointerDown),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...scrollbarProps,\n ref: composeRefs,\n style: { position: \"absolute\", ...scrollbarProps.style },\n onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {\n const mainPointer = 0;\n if (event.button === mainPointer) {\n const element = event.target;\n element.setPointerCapture(event.pointerId);\n rectRef.current = scrollbar.getBoundingClientRect();\n prevWebkitUserSelectRef.current = document.body.style.webkitUserSelect;\n document.body.style.webkitUserSelect = \"none\";\n if (context.viewport) context.viewport.style.scrollBehavior = \"auto\";\n handleDragScroll(event);\n }\n }),\n onPointerMove: composeEventHandlers(props.onPointerMove, handleDragScroll),\n onPointerUp: composeEventHandlers(props.onPointerUp, (event) => {\n const element = event.target;\n if (element.hasPointerCapture(event.pointerId)) {\n element.releasePointerCapture(event.pointerId);\n }\n document.body.style.webkitUserSelect = prevWebkitUserSelectRef.current;\n if (context.viewport) context.viewport.style.scrollBehavior = \"\";\n rectRef.current = null;\n })\n }\n )\n }\n );\n});\nvar THUMB_NAME = \"ScrollAreaThumb\";\nvar ScrollAreaThumb = React2.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...thumbProps } = props;\n const scrollbarContext = useScrollbarContext(THUMB_NAME, props.__scopeScrollArea);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || scrollbarContext.hasThumb, children: /* @__PURE__ */ jsx(ScrollAreaThumbImpl, { ref: forwardedRef, ...thumbProps }) });\n }\n);\nvar ScrollAreaThumbImpl = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeScrollArea, style, ...thumbProps } = props;\n const scrollAreaContext = useScrollAreaContext(THUMB_NAME, __scopeScrollArea);\n const scrollbarContext = useScrollbarContext(THUMB_NAME, __scopeScrollArea);\n const { onThumbPositionChange } = scrollbarContext;\n const composedRef = useComposedRefs(\n forwardedRef,\n (node) => scrollbarContext.onThumbChange(node)\n );\n const removeUnlinkedScrollListenerRef = React2.useRef(void 0);\n const debounceScrollEnd = useDebounceCallback(() => {\n if (removeUnlinkedScrollListenerRef.current) {\n removeUnlinkedScrollListenerRef.current();\n removeUnlinkedScrollListenerRef.current = void 0;\n }\n }, 100);\n React2.useEffect(() => {\n const viewport = scrollAreaContext.viewport;\n if (viewport) {\n const handleScroll = () => {\n debounceScrollEnd();\n if (!removeUnlinkedScrollListenerRef.current) {\n const listener = addUnlinkedScrollListener(viewport, onThumbPositionChange);\n removeUnlinkedScrollListenerRef.current = listener;\n onThumbPositionChange();\n }\n };\n onThumbPositionChange();\n viewport.addEventListener(\"scroll\", handleScroll);\n return () => viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [scrollAreaContext.viewport, debounceScrollEnd, onThumbPositionChange]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": scrollbarContext.hasThumb ? \"visible\" : \"hidden\",\n ...thumbProps,\n ref: composedRef,\n style: {\n width: \"var(--radix-scroll-area-thumb-width)\",\n height: \"var(--radix-scroll-area-thumb-height)\",\n ...style\n },\n onPointerDownCapture: composeEventHandlers(props.onPointerDownCapture, (event) => {\n const thumb = event.target;\n const thumbRect = thumb.getBoundingClientRect();\n const x = event.clientX - thumbRect.left;\n const y = event.clientY - thumbRect.top;\n scrollbarContext.onThumbPointerDown({ x, y });\n }),\n onPointerUp: composeEventHandlers(props.onPointerUp, scrollbarContext.onThumbPointerUp)\n }\n );\n }\n);\nScrollAreaThumb.displayName = THUMB_NAME;\nvar CORNER_NAME = \"ScrollAreaCorner\";\nvar ScrollAreaCorner = React2.forwardRef(\n (props, forwardedRef) => {\n const context = useScrollAreaContext(CORNER_NAME, props.__scopeScrollArea);\n const hasBothScrollbarsVisible = Boolean(context.scrollbarX && context.scrollbarY);\n const hasCorner = context.type !== \"scroll\" && hasBothScrollbarsVisible;\n return hasCorner ? /* @__PURE__ */ jsx(ScrollAreaCornerImpl, { ...props, ref: forwardedRef }) : null;\n }\n);\nScrollAreaCorner.displayName = CORNER_NAME;\nvar ScrollAreaCornerImpl = React2.forwardRef((props, forwardedRef) => {\n const { __scopeScrollArea, ...cornerProps } = props;\n const context = useScrollAreaContext(CORNER_NAME, __scopeScrollArea);\n const [width, setWidth] = React2.useState(0);\n const [height, setHeight] = React2.useState(0);\n const hasSize = Boolean(width && height);\n useResizeObserver(context.scrollbarX, () => {\n const height2 = context.scrollbarX?.offsetHeight || 0;\n context.onCornerHeightChange(height2);\n setHeight(height2);\n });\n useResizeObserver(context.scrollbarY, () => {\n const width2 = context.scrollbarY?.offsetWidth || 0;\n context.onCornerWidthChange(width2);\n setWidth(width2);\n });\n return hasSize ? /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...cornerProps,\n ref: forwardedRef,\n style: {\n width,\n height,\n position: \"absolute\",\n right: context.dir === \"ltr\" ? 0 : void 0,\n left: context.dir === \"rtl\" ? 0 : void 0,\n bottom: 0,\n ...props.style\n }\n }\n ) : null;\n});\nfunction toInt(value) {\n return value ? parseInt(value, 10) : 0;\n}\nfunction getThumbRatio(viewportSize, contentSize) {\n const ratio = viewportSize / contentSize;\n return isNaN(ratio) ? 0 : ratio;\n}\nfunction getThumbSize(sizes) {\n const ratio = getThumbRatio(sizes.viewport, sizes.content);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const thumbSize = (sizes.scrollbar.size - scrollbarPadding) * ratio;\n return Math.max(thumbSize, 18);\n}\nfunction getScrollPositionFromPointer(pointerPos, pointerOffset, sizes, dir = \"ltr\") {\n const thumbSizePx = getThumbSize(sizes);\n const thumbCenter = thumbSizePx / 2;\n const offset = pointerOffset || thumbCenter;\n const thumbOffsetFromEnd = thumbSizePx - offset;\n const minPointerPos = sizes.scrollbar.paddingStart + offset;\n const maxPointerPos = sizes.scrollbar.size - sizes.scrollbar.paddingEnd - thumbOffsetFromEnd;\n const maxScrollPos = sizes.content - sizes.viewport;\n const scrollRange = dir === \"ltr\" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];\n const interpolate = linearScale([minPointerPos, maxPointerPos], scrollRange);\n return interpolate(pointerPos);\n}\nfunction getThumbOffsetFromScroll(scrollPos, sizes, dir = \"ltr\") {\n const thumbSizePx = getThumbSize(sizes);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const scrollbar = sizes.scrollbar.size - scrollbarPadding;\n const maxScrollPos = sizes.content - sizes.viewport;\n const maxThumbPos = scrollbar - thumbSizePx;\n const scrollClampRange = dir === \"ltr\" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];\n const scrollWithoutMomentum = clamp(scrollPos, scrollClampRange);\n const interpolate = linearScale([0, maxScrollPos], [0, maxThumbPos]);\n return interpolate(scrollWithoutMomentum);\n}\nfunction linearScale(input, output) {\n return (value) => {\n if (input[0] === input[1] || output[0] === output[1]) return output[0];\n const ratio = (output[1] - output[0]) / (input[1] - input[0]);\n return output[0] + ratio * (value - input[0]);\n };\n}\nfunction isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos) {\n return scrollPos > 0 && scrollPos < maxScrollPos;\n}\nvar addUnlinkedScrollListener = (node, handler = () => {\n}) => {\n let prevPosition = { left: node.scrollLeft, top: node.scrollTop };\n let rAF = 0;\n (function loop() {\n const position = { left: node.scrollLeft, top: node.scrollTop };\n const isHorizontalScroll = prevPosition.left !== position.left;\n const isVerticalScroll = prevPosition.top !== position.top;\n if (isHorizontalScroll || isVerticalScroll) handler();\n prevPosition = position;\n rAF = window.requestAnimationFrame(loop);\n })();\n return () => window.cancelAnimationFrame(rAF);\n};\nfunction useDebounceCallback(callback, delay) {\n const handleCallback = useCallbackRef(callback);\n const debounceTimerRef = React2.useRef(0);\n React2.useEffect(() => () => window.clearTimeout(debounceTimerRef.current), []);\n return React2.useCallback(() => {\n window.clearTimeout(debounceTimerRef.current);\n debounceTimerRef.current = window.setTimeout(handleCallback, delay);\n }, [handleCallback, delay]);\n}\nfunction useResizeObserver(element, onResize) {\n const handleResize = useCallbackRef(onResize);\n useLayoutEffect(() => {\n let rAF = 0;\n if (element) {\n const resizeObserver = new ResizeObserver(() => {\n cancelAnimationFrame(rAF);\n rAF = window.requestAnimationFrame(handleResize);\n });\n resizeObserver.observe(element);\n return () => {\n window.cancelAnimationFrame(rAF);\n resizeObserver.unobserve(element);\n };\n }\n }, [element, handleResize]);\n}\nvar Root = ScrollArea;\nvar Viewport = ScrollAreaViewport;\nvar Scrollbar = ScrollAreaScrollbar;\nvar Thumb = ScrollAreaThumb;\nvar Corner = ScrollAreaCorner;\nexport {\n Corner,\n Root,\n ScrollArea,\n ScrollAreaCorner,\n ScrollAreaScrollbar,\n ScrollAreaThumb,\n ScrollAreaViewport,\n Scrollbar,\n Thumb,\n Viewport,\n createScrollAreaScope\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/core/number/src/number.ts\nfunction clamp(value, [min, max]) {\n return Math.min(max, Math.max(min, value));\n}\nexport {\n clamp\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\";\nimport * as ScrollAreaPrimitive from \"@radix-ui/react-scroll-area\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction ScrollArea({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof ScrollAreaPrimitive.Root>) {\n return (\n <ScrollAreaPrimitive.Root\n data-slot=\"scroll-area\"\n className={cn(\"relative\", className)}\n {...props}\n >\n <ScrollAreaPrimitive.Viewport\n data-slot=\"scroll-area-viewport\"\n className=\"ring-ring/10 dark:ring-ring/20 dark:outline-ring/40 outline-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] focus-visible:ring-4 focus-visible:outline-1\"\n >\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n );\n}\n\nfunction ScrollBar({\n className,\n orientation = \"vertical\",\n ...props\n}: React.ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n return (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n data-slot=\"scroll-area-scrollbar\"\n orientation={orientation}\n className={cn(\n \"flex touch-none p-px transition-colors select-none\",\n orientation === \"vertical\" &&\n \"h-full w-2.5 border-l border-l-transparent\",\n orientation === \"horizontal\" &&\n \"h-2.5 flex-col border-t border-t-transparent\",\n className,\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb\n data-slot=\"scroll-area-thumb\"\n className=\"bg-border relative flex-1 rounded-full\"\n />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n );\n}\n\nexport { ScrollArea, ScrollBar };\n"],"names":["SCROLL_AREA_NAME","createScrollAreaContext","createScrollAreaScope","createContextScope","ScrollAreaProvider","useScrollAreaContext","ScrollArea","React2","forwardRef","props","forwardedRef","__scopeScrollArea","type","dir","scrollHideDelay","scrollAreaProps","scrollArea","setScrollArea","useState","viewport","setViewport","content","setContent","scrollbarX","setScrollbarX","scrollbarY","setScrollbarY","cornerWidth","setCornerWidth","cornerHeight","setCornerHeight","scrollbarXEnabled","setScrollbarXEnabled","scrollbarYEnabled","setScrollbarYEnabled","composedRefs","useComposedRefs","node","direction","useDirection","jsx","scope","onViewportChange","onContentChange","onScrollbarXChange","onScrollbarXEnabledChange","onScrollbarYChange","onScrollbarYEnabledChange","onCornerWidthChange","onCornerHeightChange","children","Primitive","div","ref","style","position","displayName","VIEWPORT_NAME","ScrollAreaViewport","nonce","viewportProps","context","useRef","jsxs","Fragment","dangerouslySetInnerHTML","__html","overflowX","overflowY","minWidth","display","SCROLLBAR_NAME","ScrollAreaScrollbar","forceMount","scrollbarProps","isHorizontal","orientation","useEffect","ScrollAreaScrollbarHover","ScrollAreaScrollbarScroll","ScrollAreaScrollbarAuto","ScrollAreaScrollbarVisible","visible","setVisible","hideTimer","handlePointerEnter","window","clearTimeout","handlePointerLeave","setTimeout","addEventListener","removeEventListener","Presence","present","debounceScrollEnd","useDebounceCallback","send","state","hidden","SCROLL","scrolling","SCROLL_END","POINTER_ENTER","interacting","POINTER_LEAVE","idle","HIDE","scrollDirection","prevScrollPos","handleScroll","scrollPos","onPointerEnter","composeEventHandlers","onPointerLeave","handleResize","isOverflowX","offsetWidth","scrollWidth","isOverflowY","offsetHeight","scrollHeight","useResizeObserver","thumbRef","pointerOffsetRef","sizes","setSizes","scrollbar","size","paddingStart","paddingEnd","thumbRatio","getThumbRatio","commonProps","onSizesChange","hasThumb","Boolean","onThumbChange","thumb","current","onThumbPointerUp","onThumbPointerDown","pointerPos","getScrollPosition","pointerOffset","thumbSizePx","getThumbSize","thumbCenter","offset","thumbOffsetFromEnd","minPointerPos","maxPointerPos","maxScrollPos","scrollRange","linearScale","interpolate","getScrollPositionFromPointer","ScrollAreaScrollbarX","onThumbPositionChange","getThumbOffsetFromScroll","scrollLeft","transform","onWheelScroll","onDragScroll","ScrollAreaScrollbarY","scrollTop","computedStyle","setComputedStyle","composeRefs","getComputedStyle","ScrollAreaScrollbarImpl","bottom","left","right","x","event","deltaX","isScrollingWithinScrollbarBounds","preventDefault","onResize","clientWidth","toInt","paddingLeft","paddingRight","top","y","deltaY","clientHeight","paddingTop","paddingBottom","ScrollbarProvider","useScrollbarContext","setScrollbar","rectRef","prevWebkitUserSelectRef","handleWheelScroll","useCallbackRef","handleThumbPositionChange","handleDragScroll","clientX","clientY","handleWheel","element","target","isScrollbarWheel","contains","document","passive","onPointerDown","button","setPointerCapture","pointerId","getBoundingClientRect","body","webkitUserSelect","scrollBehavior","onPointerMove","onPointerUp","hasPointerCapture","releasePointerCapture","THUMB_NAME","ScrollAreaThumb","thumbProps","scrollbarContext","ScrollAreaThumbImpl","scrollAreaContext","composedRef","removeUnlinkedScrollListenerRef","listener","addUnlinkedScrollListener","width","height","onPointerDownCapture","thumbRect","CORNER_NAME","ScrollAreaCorner","hasBothScrollbarsVisible","ScrollAreaCornerImpl","cornerProps","setWidth","setHeight","hasSize","value","parseInt","viewportSize","contentSize","ratio","isNaN","scrollbarPadding","thumbSize","Math","max","maxThumbPos","scrollWithoutMomentum","min","clamp","input","output","handler","prevPosition","rAF","loop","isHorizontalScroll","isVerticalScroll","requestAnimationFrame","cancelAnimationFrame","callback","delay","handleCallback","debounceTimerRef","useCallback","useLayoutEffect","resizeObserver","ResizeObserver","observe","unobserve","Root","Viewport","Corner","className","React","createElement","ScrollAreaPrimitive","data-slot","cn","ScrollBar"],"mappings":"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","x_google_ignoreList":[0,1]}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
import*as e from"react";import*as t from"@radix-ui/react-select";import{c as a}from"./utils-jIFl11as.mjs";import{C as s}from"./check-DjRtCxG6.mjs";import{C as r}from"./chevron-down-BCzo9yB2.mjs";import{c as o}from"./createLucideIcon-CIn9dHnW.mjs";const l=o("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);function n({...a}){return e.createElement(t.Root,{"data-slot":"select",...a})}function c({...a}){return e.createElement(t.Group,{"data-slot":"select-group",...a})}function i({...a}){return e.createElement(t.Value,{"data-slot":"select-value",...a})}function m({className:s,children:o,...l}){return e.createElement(t.Trigger,{"data-slot":"select-trigger",className:a("border-input text-muted-foreground ring-offset-background placeholder:text-muted-foreground focus:ring-ring flex h-10 w-full cursor-pointer items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",s),...l},o,e.createElement(t.Icon,{asChild:!0},e.createElement(r,{className:"size-4 opacity-50"})))}function d({className:s,children:r,position:o="popper",...l}){return e.createElement(t.Portal,null,e.createElement(t.Content,{"data-slot":"select-content",className:a("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md","popper"===o&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",s),position:o,...l},e.createElement(g,null),e.createElement(t.Viewport,{className:a("p-1","popper"===o&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1")},r),e.createElement(b,null)))}function u({className:s,...r}){return e.createElement(t.Label,{"data-slot":"select-label",className:a("py-1.5 pr-2 pl-8 text-sm font-semibold",s),...r})}function p({className:r,children:o,...l}){return e.createElement(t.Item,{"data-slot":"select-item",className:a("focus:bg-accent focus:text-accent-foreground relative flex w-full cursor-default items-center rounded-sm py-1.5 pr-2 pl-8 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50",r),...l},e.createElement("span",{className:"absolute left-2 flex size-3.5 items-center justify-center"},e.createElement(t.ItemIndicator,null,e.createElement(s,{className:"size-4"}))),e.createElement(t.ItemText,null,o))}function f({className:s,...r}){return e.createElement(t.Separator,{"data-slot":"select-separator",className:a("bg-muted -mx-1 my-1 h-px",s),...r})}function g({className:s,...r}){return e.createElement(t.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:a("flex cursor-default items-center justify-center py-1",s),...r},e.createElement(l,{className:"size-4"}))}function b({className:s,...o}){return e.createElement(t.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:a("flex cursor-default items-center justify-center py-1",s),...o},e.createElement(r,{className:"size-4"}))}export{n as S,d as a,c as b,p as c,u as d,b as e,g as f,f as g,m as h,i};
|
2
|
+
//# sourceMappingURL=select-BydKi4E_.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"select-BydKi4E_.mjs","sources":["../../node_modules/lucide-react/dist/esm/icons/chevron-up.js","../../src/components/ui/select/select.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.479.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"m18 15-6-6-6 6\", key: \"153udz\" }]];\nconst ChevronUp = createLucideIcon(\"ChevronUp\", __iconNode);\n\nexport { __iconNode, ChevronUp as default };\n//# sourceMappingURL=chevron-up.js.map\n","import * as React from \"react\";\nimport * as SelectPrimitive from \"@radix-ui/react-select\";\nimport { CheckIcon, ChevronDownIcon, ChevronUpIcon } from \"lucide-react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Select({\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />;\n}\n\nfunction SelectGroup({\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />;\n}\n\nfunction SelectValue({\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />;\n}\n\nfunction SelectTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Trigger>) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n className={cn(\n \"border-input text-muted-foreground ring-offset-background placeholder:text-muted-foreground focus:ring-ring flex h-10 w-full cursor-pointer items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1\",\n className,\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon className=\"size-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\nfunction SelectContent({\n className,\n children,\n position = \"popper\",\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md\",\n position === \"popper\" &&\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\n className,\n )}\n position={position}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n \"p-1\",\n position === \"popper\" &&\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1\",\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\nfunction SelectLabel({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn(\"py-1.5 pr-2 pl-8 text-sm font-semibold\", className)}\n {...props}\n />\n );\n}\n\nfunction SelectItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex w-full cursor-default items-center rounded-sm py-1.5 pr-2 pl-8 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n}\n\nfunction SelectSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn(\"bg-muted -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\nfunction SelectScrollUpButton({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {\n return (\n <SelectPrimitive.ScrollUpButton\n data-slot=\"select-scroll-up-button\"\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className,\n )}\n {...props}\n >\n <ChevronUpIcon className=\"size-4\" />\n </SelectPrimitive.ScrollUpButton>\n );\n}\n\nfunction SelectScrollDownButton({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {\n return (\n <SelectPrimitive.ScrollDownButton\n data-slot=\"select-scroll-down-button\"\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className,\n )}\n {...props}\n >\n <ChevronDownIcon className=\"size-4\" />\n </SelectPrimitive.ScrollDownButton>\n );\n}\n\nexport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n};\n"],"names":["ChevronUp","createLucideIcon","d","key","Select","props","React","createElement","SelectPrimitive","Root","data-slot","SelectGroup","Group","SelectValue","Value","SelectTrigger","className","children","Trigger","cn","Icon","asChild","ChevronDownIcon","SelectContent","position","Portal","Content","SelectScrollUpButton","Viewport","SelectScrollDownButton","SelectLabel","Label","SelectItem","Item","span","ItemIndicator","CheckIcon","ItemText","SelectSeparator","Separator","ScrollUpButton","ChevronUpIcon","ScrollDownButton"],"mappings":"uPAGa,MAaPA,EAAYC,EAAiB,YAbC,CAAC,CAAC,OAAQ,CAAEC,EAAG,iBAAkBC,IAAK,aCG1E,SAASC,MACJC,IAEH,OAAOC,EAAAC,cAACC,EAAgBC,KAAI,CAACC,YAAU,YAAaL,GACtD,CAEA,SAASM,MACJN,IAEH,OAAOC,EAAAC,cAACC,EAAgBI,MAAK,CAACF,YAAU,kBAAmBL,GAC7D,CAEA,SAASQ,MACJR,IAEH,OAAOC,EAAAC,cAACC,EAAgBM,MAAK,CAACJ,YAAU,kBAAmBL,GAC7D,CAEA,SAASU,GAAcC,UACrBA,EAASC,SACTA,KACGZ,IAEH,OACEC,EAAAC,cAACC,EAAgBU,QAAO,CACtBR,YAAU,iBACVM,UAAWG,EACT,gWACAH,MAEEX,GAEHY,EACDX,EAAAC,cAACC,EAAgBY,KAAI,CAACC,SAAAA,GACpBf,EAACgB,cAAAA,EAAAA,CAAgBN,UAAU,uBAInC,CAEA,SAASO,GAAcP,UACrBA,EAASC,SACTA,EAAQO,SACRA,EAAW,YACRnB,IAEH,OACEC,gBAACE,EAAgBiB,OACf,KAAAnB,EAAAC,cAACC,EAAgBkB,QAAO,CACtBhB,YAAU,iBACVM,UAAWG,EACT,scACa,WAAbK,GACE,kIACFR,GAEFQ,SAAUA,KACNnB,GAEJC,EAACqB,cAAAA,EAAAA,MACDrB,EAACE,cAAAA,EAAgBoB,SAAQ,CACvBZ,UAAWG,EACT,MACa,WAAbK,GACE,wGAGHP,GAEHX,EAACuB,cAAAA,EAAAA,OAIT,CAEA,SAASC,GAAYd,UACnBA,KACGX,IAEH,OACEC,EAAAC,cAACC,EAAgBuB,MAAK,CACpBrB,YAAU,eACVM,UAAWG,EAAG,yCAA0CH,MACpDX,GAGV,CAEA,SAAS2B,GAAWhB,UAClBA,EAASC,SACTA,KACGZ,IAEH,OACEC,EAAAC,cAACC,EAAgByB,KAAI,CACnBvB,YAAU,cACVM,UAAWG,EACT,4NACAH,MAEEX,GAEJC,EAAC4B,cAAAA,OAAAA,CAAKlB,UAAU,6DACdV,EAACE,cAAAA,EAAgB2B,cAAa,KAC5B7B,EAAC8B,cAAAA,EAAAA,CAAUpB,UAAU,aAGzBV,EAACE,cAAAA,EAAgB6B,SAAUpB,KAAAA,GAGjC,CAEA,SAASqB,GAAgBtB,UACvBA,KACGX,IAEH,OACEC,EAAAC,cAACC,EAAgB+B,UAAS,CACxB7B,YAAU,mBACVM,UAAWG,EAAG,2BAA4BH,MACtCX,GAGV,CAEA,SAASsB,GAAqBX,UAC5BA,KACGX,IAEH,OACEC,EAAAC,cAACC,EAAgBgC,eAAc,CAC7B9B,YAAU,0BACVM,UAAWG,EACT,uDACAH,MAEEX,GAEJC,EAACmC,cAAAA,EAAAA,CAAczB,UAAU,WAG/B,CAEA,SAASa,GAAuBb,UAC9BA,KACGX,IAEH,OACEC,EAAAC,cAACC,EAAgBkC,iBAAgB,CAC/BhC,YAAU,4BACVM,UAAWG,EACT,uDACAH,MAEEX,GAEJC,EAACgB,cAAAA,EAAAA,CAAgBN,UAAU,WAGjC","x_google_ignoreList":[0]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"skeleton-BFnps3wE.mjs","sources":["../../src/components/ui/skeleton/skeleton.tsx"],"sourcesContent":["import React from \"react\";\nimport { cn } from \"@/lib/utils\";\n\nfunction Skeleton({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"skeleton\"\n className={cn(\"bg-muted animate-pulse rounded-md\", className)}\n {...props}\n />\n );\n}\n\nexport { Skeleton };\n"],"names":["Skeleton","className","props","React","div","data-slot","cn"],"mappings":"8DAGA,SAASA,GAASC,UAAEA,KAAcC,IAChC,OACEC,EAACC,cAAAA,MAAAA,CACCC,YAAU,WACVJ,UAAWK,EAAG,oCAAqCL,MAC/CC,GAGV"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
import*as e from"react";import t,{useLayoutEffect as n,useEffect as r,useRef as i,useMemo as o,useCallback as a,useState as l,memo as s,useReducer as c,createContext as d,useContext as u,forwardRef as g,cloneElement as f}from"react";import{unstable_batchedUpdates as v,createPortal as h}from"react-dom";import{Slot as p}from"@radix-ui/react-slot";import{c as m}from"./utils-jIFl11as.mjs";import{B as b}from"./button-D_c_ntEX.mjs";const y="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;function w(e){const t=Object.prototype.toString.call(e);return"[object Window]"===t||"[object global]"===t}function x(e){return"nodeType"in e}function D(e){var t,n;return e?w(e)?e:x(e)&&null!=(t=null==(n=e.ownerDocument)?void 0:n.defaultView)?t:window:window}function E(e){const{Document:t}=D(e);return e instanceof t}function C(e){return!w(e)&&e instanceof D(e).HTMLElement}function R(e){return e instanceof D(e).SVGElement}function S(e){return e?w(e)?e.document:x(e)?E(e)?e:C(e)||R(e)?e.ownerDocument:document:document:document}const N=y?n:r;function I(e){const t=i(e);return N((()=>{t.current=e})),a((function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];return null==t.current?void 0:t.current(...n)}),[])}function O(e,t){void 0===t&&(t=[e]);const n=i(e);return N((()=>{n.current!==e&&(n.current=e)}),t),n}function T(e,t){const n=i();return o((()=>{const t=e(n.current);return n.current=t,t}),[...t])}function A(e){const t=I(e),n=i(null),r=a((e=>{e!==n.current&&(null==t||t(e,n.current)),n.current=e}),[]);return[n,r]}function M(e){const t=i();return r((()=>{t.current=e}),[e]),t.current}let L={};function k(e,t){return o((()=>{if(t)return t;const n=null==L[e]?0:L[e]+1;return L[e]=n,e+"-"+n}),[e,t])}function B(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return r.reduce(((t,n)=>{const r=Object.entries(n);for(const[n,i]of r){const r=t[n];null!=r&&(t[n]=r+e*i)}return t}),{...t})}}const P=B(1),z=B(-1);function j(e){if(!e)return!1;const{KeyboardEvent:t}=D(e.target);return t&&e instanceof t}function X(e){if(function(e){if(!e)return!1;const{TouchEvent:t}=D(e.target);return t&&e instanceof t}(e)){if(e.touches&&e.touches.length){const{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}if(e.changedTouches&&e.changedTouches.length){const{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return function(e){return"clientX"in e&&"clientY"in e}(e)?{x:e.clientX,y:e.clientY}:null}const Y=Object.freeze({Translate:{toString(e){if(!e)return;const{x:t,y:n}=e;return"translate3d("+(t?Math.round(t):0)+"px, "+(n?Math.round(n):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;const{scaleX:t,scaleY:n}=e;return"scaleX("+t+") scaleY("+n+")"}},Transform:{toString(e){if(e)return[Y.Translate.toString(e),Y.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+" "+n+"ms "+r}}}),F="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function K(e){return e.matches(F)?e:e.querySelector(F)}const W={display:"none"};function U(e){let{id:n,value:r}=e;return t.createElement("div",{id:n,style:W},r)}function H(e){let{id:n,announcement:r,ariaLiveType:i="assertive"}=e;return t.createElement("div",{id:n,style:{position:"fixed",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"},role:"status","aria-live":i,"aria-atomic":!0},r)}const J=d(null);const V={draggable:"\n To pick up a draggable item, press the space bar.\n While dragging, use the arrow keys to move the item.\n Press space again to drop the item in its new position, or press escape to cancel.\n "},q={onDragStart(e){let{active:t}=e;return"Picked up draggable item "+t.id+"."},onDragOver(e){let{active:t,over:n}=e;return n?"Draggable item "+t.id+" was moved over droppable area "+n.id+".":"Draggable item "+t.id+" is no longer over a droppable area."},onDragEnd(e){let{active:t,over:n}=e;return n?"Draggable item "+t.id+" was dropped over droppable area "+n.id:"Draggable item "+t.id+" was dropped."},onDragCancel(e){let{active:t}=e;return"Dragging was cancelled. Draggable item "+t.id+" was dropped."}};function G(e){let{announcements:n=q,container:i,hiddenTextDescribedById:s,screenReaderInstructions:c=V}=e;const{announce:d,announcement:g}=function(){const[e,t]=l("");return{announce:a((e=>{null!=e&&t(e)}),[]),announcement:e}}(),f=k("DndLiveRegion"),[v,p]=l(!1);if(r((()=>{p(!0)}),[]),function(e){const t=u(J);r((()=>{if(!t)throw new Error("useDndMonitor must be used within a children of <DndContext>");return t(e)}),[e,t])}(o((()=>({onDragStart(e){let{active:t}=e;d(n.onDragStart({active:t}))},onDragMove(e){let{active:t,over:r}=e;n.onDragMove&&d(n.onDragMove({active:t,over:r}))},onDragOver(e){let{active:t,over:r}=e;d(n.onDragOver({active:t,over:r}))},onDragEnd(e){let{active:t,over:r}=e;d(n.onDragEnd({active:t,over:r}))},onDragCancel(e){let{active:t,over:r}=e;d(n.onDragCancel({active:t,over:r}))}})),[d,n])),!v)return null;const m=t.createElement(t.Fragment,null,t.createElement(U,{id:s,value:c.draggable}),t.createElement(H,{id:f,announcement:g}));return i?h(m,i):m}var Q;function Z(){}function $(e,t){return o((()=>({sensor:e,options:{}})),[e,t])}!function(e){e.DragStart="dragStart",e.DragMove="dragMove",e.DragEnd="dragEnd",e.DragCancel="dragCancel",e.DragOver="dragOver",e.RegisterDroppable="registerDroppable",e.SetDroppableDisabled="setDroppableDisabled",e.UnregisterDroppable="unregisterDroppable"}(Q||(Q={}));const _=Object.freeze({x:0,y:0});function ee(e,t){const n=X(e);if(!n)return"0 0";return(n.x-t.left)/t.width*100+"% "+(n.y-t.top)/t.height*100+"%"}function te(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return n-r}function ne(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function re(e,t,n){return void 0===t&&(t=e.left),void 0===n&&(n=e.top),{x:t+.5*e.width,y:n+.5*e.height}}const ie=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const i=re(t,t.left,t.top),o=[];for(const e of r){const{id:t}=e,r=n.get(t);if(r){const n=(a=re(r),l=i,Math.sqrt(Math.pow(a.x-l.x,2)+Math.pow(a.y-l.y,2)));o.push({id:t,data:{droppableContainer:e,value:n}})}}var a,l;return o.sort(te)};function oe(e,t){const n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),i=Math.min(t.left+t.width,e.left+e.width),o=Math.min(t.top+t.height,e.top+e.height),a=i-r,l=o-n;if(r<i&&n<o){const n=t.width*t.height,r=e.width*e.height,i=a*l;return Number((i/(n+r-i)).toFixed(4))}return 0}const ae=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const i=[];for(const e of r){const{id:r}=e,o=n.get(r);if(o){const n=oe(o,t);n>0&&i.push({id:r,data:{droppableContainer:e,value:n}})}}return i.sort(ne)};function le(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:_}function se(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return r.reduce(((t,n)=>({...t,top:t.top+e*n.y,bottom:t.bottom+e*n.y,left:t.left+e*n.x,right:t.right+e*n.x})),{...t})}}const ce=se(1);function de(e){if(e.startsWith("matrix3d(")){const t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}if(e.startsWith("matrix(")){const t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}const ue={ignoreTransform:!1};function ge(e,t){void 0===t&&(t=ue);let n=e.getBoundingClientRect();if(t.ignoreTransform){const{transform:t,transformOrigin:r}=D(e).getComputedStyle(e);t&&(n=function(e,t,n){const r=de(t);if(!r)return e;const{scaleX:i,scaleY:o,x:a,y:l}=r,s=e.left-a-(1-i)*parseFloat(n),c=e.top-l-(1-o)*parseFloat(n.slice(n.indexOf(" ")+1)),d=i?e.width/i:e.width,u=o?e.height/o:e.height;return{width:d,height:u,top:c,right:s+d,bottom:c+u,left:s}}(n,t,r))}const{top:r,left:i,width:o,height:a,bottom:l,right:s}=n;return{top:r,left:i,width:o,height:a,bottom:l,right:s}}function fe(e){return ge(e,{ignoreTransform:!0})}function ve(e,t){const n=[];return e?function r(i){if(null!=t&&n.length>=t)return n;if(!i)return n;if(E(i)&&null!=i.scrollingElement&&!n.includes(i.scrollingElement))return n.push(i.scrollingElement),n;if(!C(i)||R(i))return n;if(n.includes(i))return n;const o=D(e).getComputedStyle(i);return i!==e&&function(e,t){void 0===t&&(t=D(e).getComputedStyle(e));const n=/(auto|scroll|overlay)/;return["overflow","overflowX","overflowY"].some((e=>{const r=t[e];return"string"==typeof r&&n.test(r)}))}(i,o)&&n.push(i),function(e,t){return void 0===t&&(t=D(e).getComputedStyle(e)),"fixed"===t.position}(i,o)?n:r(i.parentNode)}(e):n}function he(e){const[t]=ve(e,1);return null!=t?t:null}function pe(e){return y&&e?w(e)?e:x(e)?E(e)||e===S(e).scrollingElement?window:C(e)?e:null:null:null}function me(e){return w(e)?e.scrollX:e.scrollLeft}function be(e){return w(e)?e.scrollY:e.scrollTop}function ye(e){return{x:me(e),y:be(e)}}var we;function xe(e){return!(!y||!e)&&e===document.scrollingElement}function De(e){const t={x:0,y:0},n=xe(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height};return{isTop:e.scrollTop<=t.y,isLeft:e.scrollLeft<=t.x,isBottom:e.scrollTop>=r.y,isRight:e.scrollLeft>=r.x,maxScroll:r,minScroll:t}}!function(e){e[e.Forward=1]="Forward",e[e.Backward=-1]="Backward"}(we||(we={}));const Ee={x:.2,y:.2};function Ce(e,t,n,r,i){let{top:o,left:a,right:l,bottom:s}=n;void 0===r&&(r=10),void 0===i&&(i=Ee);const{isTop:c,isBottom:d,isLeft:u,isRight:g}=De(e),f={x:0,y:0},v={x:0,y:0},h=t.height*i.y,p=t.width*i.x;return!c&&o<=t.top+h?(f.y=we.Backward,v.y=r*Math.abs((t.top+h-o)/h)):!d&&s>=t.bottom-h&&(f.y=we.Forward,v.y=r*Math.abs((t.bottom-h-s)/h)),!g&&l>=t.right-p?(f.x=we.Forward,v.x=r*Math.abs((t.right-p-l)/p)):!u&&a<=t.left+p&&(f.x=we.Backward,v.x=r*Math.abs((t.left+p-a)/p)),{direction:f,speed:v}}function Re(e){if(e===document.scrollingElement){const{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}const{top:t,left:n,right:r,bottom:i}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:i,width:e.clientWidth,height:e.clientHeight}}function Se(e){return e.reduce(((e,t)=>P(e,ye(t))),_)}function Ne(e,t){if(void 0===t&&(t=ge),!e)return;const{top:n,left:r,bottom:i,right:o}=t(e);he(e)&&(i<=0||o<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:"center",inline:"center"})}const Ie=[["x",["left","right"],function(e){return e.reduce(((e,t)=>e+me(t)),0)}],["y",["top","bottom"],function(e){return e.reduce(((e,t)=>e+be(t)),0)}]];class Oe{constructor(e,t){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;const n=ve(t),r=Se(n);this.rect={...e},this.width=e.width,this.height=e.height;for(const[e,t,i]of Ie)for(const o of t)Object.defineProperty(this,o,{get:()=>{const t=i(n),a=r[e]-t;return this.rect[o]+a},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}}class Te{add(e,t,n){var r;null==(r=this.target)||r.addEventListener(e,t,n),this.listeners.push([e,t,n])}constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach((e=>{var t;return null==(t=this.target)?void 0:t.removeEventListener(...e)}))},this.target=e}}function Ae(e,t){const n=Math.abs(e.x),r=Math.abs(e.y);return"number"==typeof t?Math.sqrt(n**2+r**2)>t:"x"in t&&"y"in t?n>t.x&&r>t.y:"x"in t?n>t.x:"y"in t&&r>t.y}var Me,Le;function ke(e){e.preventDefault()}function Be(e){e.stopPropagation()}!function(e){e.Click="click",e.DragStart="dragstart",e.Keydown="keydown",e.ContextMenu="contextmenu",e.Resize="resize",e.SelectionChange="selectionchange",e.VisibilityChange="visibilitychange"}(Me||(Me={})),function(e){e.Space="Space",e.Down="ArrowDown",e.Right="ArrowRight",e.Left="ArrowLeft",e.Up="ArrowUp",e.Esc="Escape",e.Enter="Enter",e.Tab="Tab"}(Le||(Le={}));const Pe={start:[Le.Space,Le.Enter],cancel:[Le.Esc],end:[Le.Space,Le.Enter,Le.Tab]},ze=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case Le.Right:return{...n,x:n.x+25};case Le.Left:return{...n,x:n.x-25};case Le.Down:return{...n,y:n.y+25};case Le.Up:return{...n,y:n.y-25}}};class je{attach(){this.handleStart(),this.windowListeners.add(Me.Resize,this.handleCancel),this.windowListeners.add(Me.VisibilityChange,this.handleCancel),setTimeout((()=>this.listeners.add(Me.Keydown,this.handleKeyDown)))}handleStart(){const{activeNode:e,onStart:t}=this.props,n=e.node.current;n&&Ne(n),t(_)}handleKeyDown(e){if(j(e)){const{active:t,context:n,options:r}=this.props,{keyboardCodes:i=Pe,coordinateGetter:o=ze,scrollBehavior:a="smooth"}=r,{code:l}=e;if(i.end.includes(l))return void this.handleEnd(e);if(i.cancel.includes(l))return void this.handleCancel(e);const{collisionRect:s}=n.current,c=s?{x:s.left,y:s.top}:_;this.referenceCoordinates||(this.referenceCoordinates=c);const d=o(e,{active:t,context:n.current,currentCoordinates:c});if(d){const t=z(d,c),r={x:0,y:0},{scrollableAncestors:i}=n.current;for(const n of i){const i=e.code,{isTop:o,isRight:l,isLeft:s,isBottom:c,maxScroll:u,minScroll:g}=De(n),f=Re(n),v={x:Math.min(i===Le.Right?f.right-f.width/2:f.right,Math.max(i===Le.Right?f.left:f.left+f.width/2,d.x)),y:Math.min(i===Le.Down?f.bottom-f.height/2:f.bottom,Math.max(i===Le.Down?f.top:f.top+f.height/2,d.y))},h=i===Le.Right&&!l||i===Le.Left&&!s,p=i===Le.Down&&!c||i===Le.Up&&!o;if(h&&v.x!==d.x){const e=n.scrollLeft+t.x,o=i===Le.Right&&e<=u.x||i===Le.Left&&e>=g.x;if(o&&!t.y)return void n.scrollTo({left:e,behavior:a});r.x=o?n.scrollLeft-e:i===Le.Right?n.scrollLeft-u.x:n.scrollLeft-g.x,r.x&&n.scrollBy({left:-r.x,behavior:a});break}if(p&&v.y!==d.y){const e=n.scrollTop+t.y,o=i===Le.Down&&e<=u.y||i===Le.Up&&e>=g.y;if(o&&!t.x)return void n.scrollTo({top:e,behavior:a});r.y=o?n.scrollTop-e:i===Le.Down?n.scrollTop-u.y:n.scrollTop-g.y,r.y&&n.scrollBy({top:-r.y,behavior:a});break}}this.handleMove(e,P(z(d,this.referenceCoordinates),r))}}}handleMove(e,t){const{onMove:n}=this.props;e.preventDefault(),n(t)}handleEnd(e){const{onEnd:t}=this.props;e.preventDefault(),this.detach(),t()}handleCancel(e){const{onCancel:t}=this.props;e.preventDefault(),this.detach(),t()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;const{event:{target:t}}=e;this.props=e,this.listeners=new Te(S(t)),this.windowListeners=new Te(D(t)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}}function Xe(e){return Boolean(e&&"distance"in e)}function Ye(e){return Boolean(e&&"delay"in e)}je.activators=[{eventName:"onKeyDown",handler:(e,t,n)=>{let{keyboardCodes:r=Pe,onActivation:i}=t,{active:o}=n;const{code:a}=e.nativeEvent;if(r.start.includes(a)){const t=o.activatorNode.current;return(!t||e.target===t)&&(e.preventDefault(),null==i||i({event:e.nativeEvent}),!0)}return!1}}];class Fe{attach(){const{events:e,props:{options:{activationConstraint:t,bypassActivationConstraint:n}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),e.cancel&&this.listeners.add(e.cancel.name,this.handleCancel),this.windowListeners.add(Me.Resize,this.handleCancel),this.windowListeners.add(Me.DragStart,ke),this.windowListeners.add(Me.VisibilityChange,this.handleCancel),this.windowListeners.add(Me.ContextMenu,ke),this.documentListeners.add(Me.Keydown,this.handleKeydown),t){if(null!=n&&n({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Ye(t))return this.timeoutId=setTimeout(this.handleStart,t.delay),void this.handlePending(t);if(Xe(t))return void this.handlePending(t)}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),null!==this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(e,t){const{active:n,onPending:r}=this.props;r(n,e,this.initialCoordinates,t)}handleStart(){const{initialCoordinates:e}=this,{onStart:t}=this.props;e&&(this.activated=!0,this.documentListeners.add(Me.Click,Be,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(Me.SelectionChange,this.removeTextSelection),t(e))}handleMove(e){var t;const{activated:n,initialCoordinates:r,props:i}=this,{onMove:o,options:{activationConstraint:a}}=i;if(!r)return;const l=null!=(t=X(e))?t:_,s=z(r,l);if(!n&&a){if(Xe(a)){if(null!=a.tolerance&&Ae(s,a.tolerance))return this.handleCancel();if(Ae(s,a.distance))return this.handleStart()}return Ye(a)&&Ae(s,a.tolerance)?this.handleCancel():void this.handlePending(a,s)}e.cancelable&&e.preventDefault(),o(l)}handleEnd(){const{onAbort:e,onEnd:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleCancel(){const{onAbort:e,onCancel:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleKeydown(e){e.code===Le.Esc&&this.handleCancel()}removeTextSelection(){var e;null==(e=this.document.getSelection())||e.removeAllRanges()}constructor(e,t,n){var r;void 0===n&&(n=function(e){const{EventTarget:t}=D(e);return e instanceof t?e:S(e)}(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=t;const{event:i}=e,{target:o}=i;this.props=e,this.events=t,this.document=S(o),this.documentListeners=new Te(this.document),this.listeners=new Te(n),this.windowListeners=new Te(D(o)),this.initialCoordinates=null!=(r=X(i))?r:_,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}}const Ke={cancel:{name:"pointercancel"},move:{name:"pointermove"},end:{name:"pointerup"}};class We extends Fe{constructor(e){const{event:t}=e,n=S(t.target);super(e,Ke,n)}}We.activators=[{eventName:"onPointerDown",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!(!n.isPrimary||0!==n.button)&&(null==r||r({event:n}),!0)}}];const Ue={move:{name:"mousemove"},end:{name:"mouseup"}};var He;!function(e){e[e.RightClick=2]="RightClick"}(He||(He={}));class Je extends Fe{constructor(e){super(e,Ue,S(e.event.target))}}Je.activators=[{eventName:"onMouseDown",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button!==He.RightClick&&(null==r||r({event:n}),!0)}}];const Ve={cancel:{name:"touchcancel"},move:{name:"touchmove"},end:{name:"touchend"}};class qe extends Fe{static setup(){return window.addEventListener(Ve.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(Ve.move.name,e)};function e(){}}constructor(e){super(e,Ve)}}var Ge,Qe;function Ze(e){let{acceleration:t,activator:n=Ge.Pointer,canScroll:l,draggingRect:s,enabled:c,interval:d=5,order:u=Qe.TreeOrder,pointerCoordinates:g,scrollableAncestors:f,scrollableAncestorRects:v,delta:h,threshold:p}=e;const m=function(e){let{delta:t,disabled:n}=e;const r=M(t);return T((e=>{if(n||!r||!e)return $e;const i={x:Math.sign(t.x-r.x),y:Math.sign(t.y-r.y)};return{x:{[we.Backward]:e.x[we.Backward]||-1===i.x,[we.Forward]:e.x[we.Forward]||1===i.x},y:{[we.Backward]:e.y[we.Backward]||-1===i.y,[we.Forward]:e.y[we.Forward]||1===i.y}}}),[n,t,r])}({delta:h,disabled:!c}),[b,y]=function(){const e=i(null);return[a(((t,n)=>{e.current=setInterval(t,n)}),[]),a((()=>{null!==e.current&&(clearInterval(e.current),e.current=null)}),[])]}(),w=i({x:0,y:0}),x=i({x:0,y:0}),D=o((()=>{switch(n){case Ge.Pointer:return g?{top:g.y,bottom:g.y,left:g.x,right:g.x}:null;case Ge.DraggableRect:return s}}),[n,s,g]),E=i(null),C=a((()=>{const e=E.current;if(!e)return;const t=w.current.x*x.current.x,n=w.current.y*x.current.y;e.scrollBy(t,n)}),[]),R=o((()=>u===Qe.TreeOrder?[...f].reverse():f),[u,f]);r((()=>{if(c&&f.length&&D){for(const e of R){if(!1===(null==l?void 0:l(e)))continue;const n=f.indexOf(e),r=v[n];if(!r)continue;const{direction:i,speed:o}=Ce(e,r,D,t,p);for(const e of["x","y"])m[e][i[e]]||(o[e]=0,i[e]=0);if(o.x>0||o.y>0)return y(),E.current=e,b(C,d),w.current=o,void(x.current=i)}w.current={x:0,y:0},x.current={x:0,y:0},y()}else y()}),[t,C,l,y,c,d,JSON.stringify(D),JSON.stringify(m),b,f,R,v,JSON.stringify(p)])}qe.activators=[{eventName:"onTouchStart",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;const{touches:i}=n;return!(i.length>1)&&(null==r||r({event:n}),!0)}}],function(e){e[e.Pointer=0]="Pointer",e[e.DraggableRect=1]="DraggableRect"}(Ge||(Ge={})),function(e){e[e.TreeOrder=0]="TreeOrder",e[e.ReversedTreeOrder=1]="ReversedTreeOrder"}(Qe||(Qe={}));const $e={x:{[we.Backward]:!1,[we.Forward]:!1},y:{[we.Backward]:!1,[we.Forward]:!1}};var _e,et;!function(e){e[e.Always=0]="Always",e[e.BeforeDragging=1]="BeforeDragging",e[e.WhileDragging=2]="WhileDragging"}(_e||(_e={})),function(e){e.Optimized="optimized"}(et||(et={}));const tt=new Map;function nt(e,t){return T((n=>e?n||("function"==typeof t?t(e):e):null),[t,e])}function rt(e){let{callback:t,disabled:n}=e;const i=I(t),a=o((()=>{if(n||"undefined"==typeof window||void 0===window.ResizeObserver)return;const{ResizeObserver:e}=window;return new e(i)}),[n]);return r((()=>()=>null==a?void 0:a.disconnect()),[a]),a}function it(e){return new Oe(ge(e),e)}function ot(e,t,n){void 0===t&&(t=it);const[i,a]=l(null);function s(){a((r=>{if(!e)return null;var i;if(!1===e.isConnected)return null!=(i=null!=r?r:n)?i:null;const o=t(e);return JSON.stringify(r)===JSON.stringify(o)?r:o}))}const c=function(e){let{callback:t,disabled:n}=e;const i=I(t),a=o((()=>{if(n||"undefined"==typeof window||void 0===window.MutationObserver)return;const{MutationObserver:e}=window;return new e(i)}),[i,n]);return r((()=>()=>null==a?void 0:a.disconnect()),[a]),a}({callback(t){if(e)for(const n of t){const{type:t,target:r}=n;if("childList"===t&&r instanceof HTMLElement&&r.contains(e)){s();break}}}}),d=rt({callback:s});return N((()=>{s(),e?(null==d||d.observe(e),null==c||c.observe(document.body,{childList:!0,subtree:!0})):(null==d||d.disconnect(),null==c||c.disconnect())}),[e]),i}const at=[];function lt(e,t){void 0===t&&(t=[]);const n=i(null);return r((()=>{n.current=null}),t),r((()=>{const t=e!==_;t&&!n.current&&(n.current=e),!t&&n.current&&(n.current=null)}),[e]),n.current?z(e,n.current):_}function st(e){return o((()=>e?function(e){const t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}(e):null),[e])}const ct=[];function dt(e){if(!e)return null;if(e.children.length>1)return e;const t=e.children[0];return C(t)?t:e}const ut=[{sensor:We,options:{}},{sensor:je,options:{}}],gt={current:{}},ft={draggable:{measure:fe},droppable:{measure:fe,strategy:_e.WhileDragging,frequency:et.Optimized},dragOverlay:{measure:ge}};class vt extends Map{get(e){var t;return null!=e&&null!=(t=super.get(e))?t:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter((e=>{let{disabled:t}=e;return!t}))}getNodeFor(e){var t,n;return null!=(t=null==(n=this.get(e))?void 0:n.node.current)?t:void 0}}const ht={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new vt,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Z},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:ft,measureDroppableContainers:Z,windowRect:null,measuringScheduled:!1},pt={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:Z,draggableNodes:new Map,over:null,measureDroppableContainers:Z},mt=d(pt),bt=d(ht);function yt(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new vt}}}function wt(e,t){switch(t.type){case Q.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case Q.DragMove:return null==e.draggable.active?e:{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}};case Q.DragEnd:case Q.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case Q.RegisterDroppable:{const{element:n}=t,{id:r}=n,i=new vt(e.droppable.containers);return i.set(r,n),{...e,droppable:{...e.droppable,containers:i}}}case Q.SetDroppableDisabled:{const{id:n,key:r,disabled:i}=t,o=e.droppable.containers.get(n);if(!o||r!==o.key)return e;const a=new vt(e.droppable.containers);return a.set(n,{...o,disabled:i}),{...e,droppable:{...e.droppable,containers:a}}}case Q.UnregisterDroppable:{const{id:n,key:r}=t,i=e.droppable.containers.get(n);if(!i||r!==i.key)return e;const o=new vt(e.droppable.containers);return o.delete(n),{...e,droppable:{...e.droppable,containers:o}}}default:return e}}function xt(e){let{disabled:t}=e;const{active:n,activatorEvent:i,draggableNodes:o}=u(mt),a=M(i),l=M(null==n?void 0:n.id);return r((()=>{if(!t&&!i&&a&&null!=l){if(!j(a))return;if(document.activeElement===a.target)return;const e=o.get(l);if(!e)return;const{activatorNode:t,node:n}=e;if(!t.current&&!n.current)return;requestAnimationFrame((()=>{for(const e of[t.current,n.current]){if(!e)continue;const t=K(e);if(t){t.focus();break}}}))}}),[i,t,o,l,a]),null}function Dt(e,t){let{transform:n,...r}=t;return null!=e&&e.length?e.reduce(((e,t)=>t({transform:e,...r})),n):n}const Et=d({..._,scaleX:1,scaleY:1});var Ct;!function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Initializing=1]="Initializing",e[e.Initialized=2]="Initialized"}(Ct||(Ct={}));const Rt=s((function(e){var n,s,d,u;let{id:g,accessibility:f,autoScroll:h=!0,children:p,sensors:m=ut,collisionDetection:b=ae,measuring:w,modifiers:x,...E}=e;const R=c(wt,void 0,yt),[S,I]=R,[M,L]=function(){const[e]=l((()=>new Set)),t=a((t=>(e.add(t),()=>e.delete(t))),[e]);return[a((t=>{let{type:n,event:r}=t;e.forEach((e=>{var t;return null==(t=e[n])?void 0:t.call(e,r)}))}),[e]),t]}(),[B,z]=l(Ct.Uninitialized),j=B===Ct.Initialized,{draggable:{active:Y,nodes:F,translate:K},droppable:{containers:W}}=S,U=null!=Y?F.get(Y):null,H=i({initial:null,translated:null}),V=o((()=>{var e;return null!=Y?{id:Y,data:null!=(e=null==U?void 0:U.data)?e:gt,rect:H}:null}),[Y,U]),q=i(null),[Z,$]=l(null),[ee,te]=l(null),ne=O(E,Object.values(E)),re=k("DndDescribedBy",g),ie=o((()=>W.getEnabled()),[W]),oe=o((()=>({draggable:{...ft.draggable,...null==se?void 0:se.draggable},droppable:{...ft.droppable,...null==se?void 0:se.droppable},dragOverlay:{...ft.dragOverlay,...null==se?void 0:se.dragOverlay}})),[null==(se=w)?void 0:se.draggable,null==se?void 0:se.droppable,null==se?void 0:se.dragOverlay]);var se;const{droppableRects:de,measureDroppableContainers:ue,measuringScheduled:fe}=function(e,t){let{dragging:n,dependencies:o,config:s}=t;const[c,d]=l(null),{frequency:u,measure:g,strategy:f}=s,v=i(e),h=function(){switch(f){case _e.Always:return!1;case _e.BeforeDragging:return n;default:return!n}}(),p=O(h),m=a((function(e){void 0===e&&(e=[]),p.current||d((t=>null===t?e:t.concat(e.filter((e=>!t.includes(e))))))}),[p]),b=i(null),y=T((t=>{if(h&&!n)return tt;if(!t||t===tt||v.current!==e||null!=c){const t=new Map;for(let n of e){if(!n)continue;if(c&&c.length>0&&!c.includes(n.id)&&n.rect.current){t.set(n.id,n.rect.current);continue}const e=n.node.current,r=e?new Oe(g(e),e):null;n.rect.current=r,r&&t.set(n.id,r)}return t}return t}),[e,c,n,h,g]);return r((()=>{v.current=e}),[e]),r((()=>{h||m()}),[n,h]),r((()=>{c&&c.length>0&&d(null)}),[JSON.stringify(c)]),r((()=>{h||"number"!=typeof u||null!==b.current||(b.current=setTimeout((()=>{m(),b.current=null}),u))}),[u,h,m,...o]),{droppableRects:y,measureDroppableContainers:m,measuringScheduled:null!=c}}(ie,{dragging:j,dependencies:[K.x,K.y],config:oe.droppable}),me=function(e,t){const n=null!=t?e.get(t):void 0,r=n?n.node.current:null;return T((e=>{var n;return null==t?null:null!=(n=null!=r?r:e)?n:null}),[r,t])}(F,Y),be=o((()=>ee?X(ee):null),[ee]),we=function(){const e=!1===(null==Z?void 0:Z.autoScrollEnabled),t="object"==typeof h?!1===h.enabled:!1===h,n=j&&!e&&!t;if("object"==typeof h)return{...h,enabled:n};return{enabled:n}}(),De=function(e,t){return nt(e,t)}(me,oe.draggable.measure);!function(e){let{activeNode:t,measure:n,initialRect:r,config:o=!0}=e;const a=i(!1),{x:l,y:s}="boolean"==typeof o?{x:o,y:o}:o;N((()=>{if(!l&&!s||!t)return void(a.current=!1);if(a.current||!r)return;const e=null==t?void 0:t.node.current;if(!e||!1===e.isConnected)return;const i=le(n(e),r);if(l||(i.x=0),s||(i.y=0),a.current=!0,Math.abs(i.x)>0||Math.abs(i.y)>0){const t=he(e);t&&t.scrollBy({top:i.y,left:i.x})}}),[t,l,s,r,n])}({activeNode:null!=Y?F.get(Y):null,config:we.layoutShiftCompensation,initialRect:De,measure:oe.draggable.measure});const Ee=ot(me,oe.draggable.measure,De),Ce=ot(me?me.parentElement:null),Re=i({activatorEvent:null,active:null,activeNode:me,collisionRect:null,collisions:null,droppableRects:de,draggableNodes:F,draggingNode:null,draggingNodeRect:null,droppableContainers:W,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),Ne=W.getNodeFor(null==(n=Re.current.over)?void 0:n.id),Ie=function(e){let{measure:t}=e;const[n,r]=l(null),i=rt({callback:a((e=>{for(const{target:n}of e)if(C(n)){r((e=>{const r=t(n);return e?{...e,width:r.width,height:r.height}:r}));break}}),[t])}),s=a((e=>{const n=dt(e);null==i||i.disconnect(),n&&(null==i||i.observe(n)),r(n?t(n):null)}),[t,i]),[c,d]=A(s);return o((()=>({nodeRef:c,rect:n,setRef:d})),[n,c,d])}({measure:oe.dragOverlay.measure}),Te=null!=(s=Ie.nodeRef.current)?s:me,Ae=j?null!=(d=Ie.rect)?d:Ee:null,Me=Boolean(Ie.nodeRef.current&&Ie.rect),Le=le(ke=Me?null:Ee,nt(ke));var ke;const Be=st(Te?D(Te):null),Pe=function(e){const t=i(e),n=T((n=>e?n&&n!==at&&e&&t.current&&e.parentNode===t.current.parentNode?n:ve(e):at),[e]);return r((()=>{t.current=e}),[e]),n}(j?null!=Ne?Ne:me:null),ze=function(e,t){void 0===t&&(t=ge);const[n]=e,r=st(n?D(n):null),[i,o]=l(ct);function a(){o((()=>e.length?e.map((e=>xe(e)?r:new Oe(t(e),e))):ct))}const s=rt({callback:a});return N((()=>{null==s||s.disconnect(),a(),e.forEach((e=>null==s?void 0:s.observe(e)))}),[e]),i}(Pe),je=Dt(x,{transform:{x:K.x-Le.x,y:K.y-Le.y,scaleX:1,scaleY:1},activatorEvent:ee,active:V,activeNodeRect:Ee,containerNodeRect:Ce,draggingNodeRect:Ae,over:Re.current.over,overlayNodeRect:Ie.rect,scrollableAncestors:Pe,scrollableAncestorRects:ze,windowRect:Be}),Xe=be?P(be,K):null,Ye=function(e){const[t,n]=l(null),s=i(e),c=a((e=>{const t=pe(e.target);t&&n((e=>e?(e.set(t,ye(t)),new Map(e)):null))}),[]);return r((()=>{const t=s.current;if(e!==t){r(t);const i=e.map((e=>{const t=pe(e);return t?(t.addEventListener("scroll",c,{passive:!0}),[t,ye(t)]):null})).filter((e=>null!=e));n(i.length?new Map(i):null),s.current=e}return()=>{r(e),r(t)};function r(e){e.forEach((e=>{const t=pe(e);null==t||t.removeEventListener("scroll",c)}))}}),[c,e]),o((()=>e.length?t?Array.from(t.values()).reduce(((e,t)=>P(e,t)),_):Se(e):_),[e,t])}(Pe),Fe=lt(Ye),Ke=lt(Ye,[Ee]),We=P(je,Fe),Ue=Ae?ce(Ae,je):null,He=V&&Ue?b({active:V,collisionRect:Ue,droppableRects:de,droppableContainers:ie,pointerCoordinates:Xe}):null,Je=function(e,t){if(!e||0===e.length)return null;const[n]=e;return n[t]}(He,"id"),[Ve,qe]=l(null),Ge=function(e,t,n){return{...e,scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1}}(Me?je:P(je,Ke),null!=(u=null==Ve?void 0:Ve.rect)?u:null,Ee),Qe=i(null),$e=a(((e,t)=>{let{sensor:n,options:r}=t;if(null==q.current)return;const i=F.get(q.current);if(!i)return;const o=e.nativeEvent,a=new n({active:q.current,activeNode:i,event:o,options:r,context:Re,onAbort(e){if(!F.get(e))return;const{onDragAbort:t}=ne.current,n={id:e};null==t||t(n),M({type:"onDragAbort",event:n})},onPending(e,t,n,r){if(!F.get(e))return;const{onDragPending:i}=ne.current,o={id:e,constraint:t,initialCoordinates:n,offset:r};null==i||i(o),M({type:"onDragPending",event:o})},onStart(e){const t=q.current;if(null==t)return;const n=F.get(t);if(!n)return;const{onDragStart:r}=ne.current,i={activatorEvent:o,active:{id:t,data:n.data,rect:H}};v((()=>{null==r||r(i),z(Ct.Initializing),I({type:Q.DragStart,initialCoordinates:e,active:t}),M({type:"onDragStart",event:i}),$(Qe.current),te(o)}))},onMove(e){I({type:Q.DragMove,coordinates:e})},onEnd:l(Q.DragEnd),onCancel:l(Q.DragCancel)});function l(e){return async function(){const{active:t,collisions:n,over:r,scrollAdjustedTranslate:i}=Re.current;let a=null;if(t&&i){const{cancelDrop:l}=ne.current;if(a={activatorEvent:o,active:t,collisions:n,delta:i,over:r},e===Q.DragEnd&&"function"==typeof l){await Promise.resolve(l(a))&&(e=Q.DragCancel)}}q.current=null,v((()=>{I({type:e}),z(Ct.Uninitialized),qe(null),$(null),te(null),Qe.current=null;const t=e===Q.DragEnd?"onDragEnd":"onDragCancel";if(a){const e=ne.current[t];null==e||e(a),M({type:t,event:a})}}))}}Qe.current=a}),[F]),et=a(((e,t)=>(n,r)=>{const i=n.nativeEvent,o=F.get(r);if(null!==q.current||!o||i.dndKit||i.defaultPrevented)return;const a={active:o};!0===e(n,t.options,a)&&(i.dndKit={capturedBy:t.sensor},q.current=r,$e(n,t))}),[F,$e]),it=function(e,t){return o((()=>e.reduce(((e,n)=>{const{sensor:r}=n;return[...e,...r.activators.map((e=>({eventName:e.eventName,handler:t(e.handler,n)})))]}),[])),[e,t])}(m,et);!function(e){r((()=>{if(!y)return;const t=e.map((e=>{let{sensor:t}=e;return null==t.setup?void 0:t.setup()}));return()=>{for(const e of t)null==e||e()}}),e.map((e=>{let{sensor:t}=e;return t})))}(m),N((()=>{Ee&&B===Ct.Initializing&&z(Ct.Initialized)}),[Ee,B]),r((()=>{const{onDragMove:e}=ne.current,{active:t,activatorEvent:n,collisions:r,over:i}=Re.current;if(!t||!n)return;const o={active:t,activatorEvent:n,collisions:r,delta:{x:We.x,y:We.y},over:i};v((()=>{null==e||e(o),M({type:"onDragMove",event:o})}))}),[We.x,We.y]),r((()=>{const{active:e,activatorEvent:t,collisions:n,droppableContainers:r,scrollAdjustedTranslate:i}=Re.current;if(!e||null==q.current||!t||!i)return;const{onDragOver:o}=ne.current,a=r.get(Je),l=a&&a.rect.current?{id:a.id,rect:a.rect.current,data:a.data,disabled:a.disabled}:null,s={active:e,activatorEvent:t,collisions:n,delta:{x:i.x,y:i.y},over:l};v((()=>{qe(l),null==o||o(s),M({type:"onDragOver",event:s})}))}),[Je]),N((()=>{Re.current={activatorEvent:ee,active:V,activeNode:me,collisionRect:Ue,collisions:He,droppableRects:de,draggableNodes:F,draggingNode:Te,draggingNodeRect:Ae,droppableContainers:W,over:Ve,scrollableAncestors:Pe,scrollAdjustedTranslate:We},H.current={initial:Ae,translated:Ue}}),[V,me,He,Ue,F,Te,Ae,de,W,Ve,Pe,We]),Ze({...we,delta:K,draggingRect:Ue,pointerCoordinates:Xe,scrollableAncestors:Pe,scrollableAncestorRects:ze});const vt=o((()=>({active:V,activeNode:me,activeNodeRect:Ee,activatorEvent:ee,collisions:He,containerNodeRect:Ce,dragOverlay:Ie,draggableNodes:F,droppableContainers:W,droppableRects:de,over:Ve,measureDroppableContainers:ue,scrollableAncestors:Pe,scrollableAncestorRects:ze,measuringConfiguration:oe,measuringScheduled:fe,windowRect:Be})),[V,me,Ee,ee,He,Ce,Ie,F,W,de,Ve,ue,Pe,ze,oe,fe,Be]),ht=o((()=>({activatorEvent:ee,activators:it,active:V,activeNodeRect:Ee,ariaDescribedById:{draggable:re},dispatch:I,draggableNodes:F,over:Ve,measureDroppableContainers:ue})),[ee,it,V,Ee,I,re,F,Ve,ue]);return t.createElement(J.Provider,{value:L},t.createElement(mt.Provider,{value:ht},t.createElement(bt.Provider,{value:vt},t.createElement(Et.Provider,{value:Ge},p)),t.createElement(xt,{disabled:!1===(null==f?void 0:f.restoreFocus)})),t.createElement(G,{...f,hiddenTextDescribedById:re}))})),St=d(null),Nt="button";function It(e){let{id:t,data:n,disabled:r=!1,attributes:i}=e;const a=k("Draggable"),{activators:l,activatorEvent:s,active:c,activeNodeRect:d,ariaDescribedById:g,draggableNodes:f,over:v}=u(mt),{role:h=Nt,roleDescription:p="draggable",tabIndex:m=0}=null!=i?i:{},b=(null==c?void 0:c.id)===t,y=u(b?Et:St),[w,x]=A(),[D,E]=A(),C=function(e,t){return o((()=>e.reduce(((e,n)=>{let{eventName:r,handler:i}=n;return e[r]=e=>{i(e,t)},e}),{})),[e,t])}(l,t),R=O(n);N((()=>(f.set(t,{id:t,key:a,node:w,activatorNode:D,data:R}),()=>{const e=f.get(t);e&&e.key===a&&f.delete(t)})),[f,t]);return{active:c,activatorEvent:s,activeNodeRect:d,attributes:o((()=>({role:h,tabIndex:m,"aria-disabled":r,"aria-pressed":!(!b||h!==Nt)||void 0,"aria-roledescription":p,"aria-describedby":g.draggable})),[r,h,m,b,p,g.draggable]),isDragging:b,listeners:r?void 0:C,node:w,over:v,setNodeRef:x,setActivatorNodeRef:E,transform:y}}function Ot(){return u(bt)}const Tt={timeout:25};function At(e){let{animation:n,children:r}=e;const[i,o]=l(null),[a,s]=l(null),c=M(r);return r||i||!c||o(c),N((()=>{if(!a)return;const e=null==i?void 0:i.key,t=null==i?void 0:i.props.id;null!=e&&null!=t?Promise.resolve(n(t,a)).then((()=>{o(null)})):o(null)}),[n,i,a]),t.createElement(t.Fragment,null,r,i?f(i,{ref:s}):null)}const Mt={x:0,y:0,scaleX:1,scaleY:1};function Lt(e){let{children:n}=e;return t.createElement(mt.Provider,{value:pt},t.createElement(Et.Provider,{value:Mt},n))}const kt={position:"fixed",touchAction:"none"},Bt=e=>j(e)?"transform 250ms ease":void 0,Pt=g(((e,n)=>{let{as:r,activatorEvent:i,adjustScale:o,children:a,className:l,rect:s,style:c,transform:d,transition:u=Bt}=e;if(!s)return null;const g=o?d:{...d,scaleX:1,scaleY:1},f={...kt,width:s.width,height:s.height,top:s.top,left:s.left,transform:Y.Transform.toString(g),transformOrigin:o&&i?ee(i,s):void 0,transition:"function"==typeof u?u(i):u,...c};return t.createElement(r,{className:l,style:f,ref:n},a)})),zt=e=>t=>{let{active:n,dragOverlay:r}=t;const i={},{styles:o,className:a}=e;if(null!=o&&o.active)for(const[e,t]of Object.entries(o.active))void 0!==t&&(i[e]=n.node.style.getPropertyValue(e),n.node.style.setProperty(e,t));if(null!=o&&o.dragOverlay)for(const[e,t]of Object.entries(o.dragOverlay))void 0!==t&&r.node.style.setProperty(e,t);return null!=a&&a.active&&n.node.classList.add(a.active),null!=a&&a.dragOverlay&&r.node.classList.add(a.dragOverlay),function(){for(const[e,t]of Object.entries(i))n.node.style.setProperty(e,t);null!=a&&a.active&&n.node.classList.remove(a.active)}},jt={duration:250,easing:"ease",keyframes:e=>{let{transform:{initial:t,final:n}}=e;return[{transform:Y.Transform.toString(t)},{transform:Y.Transform.toString(n)}]},sideEffects:zt({styles:{active:{opacity:"0"}}})};function Xt(e){let{config:t,draggableNodes:n,droppableContainers:r,measuringConfiguration:i}=e;return I(((e,o)=>{if(null===t)return;const a=n.get(e);if(!a)return;const l=a.node.current;if(!l)return;const s=dt(o);if(!s)return;const{transform:c}=D(o).getComputedStyle(o),d=de(c);if(!d)return;const u="function"==typeof t?t:function(e){const{duration:t,easing:n,sideEffects:r,keyframes:i}={...jt,...e};return e=>{let{active:o,dragOverlay:a,transform:l,...s}=e;if(!t)return;const c={x:a.rect.left-o.rect.left,y:a.rect.top-o.rect.top},d={scaleX:1!==l.scaleX?o.rect.width*l.scaleX/a.rect.width:1,scaleY:1!==l.scaleY?o.rect.height*l.scaleY/a.rect.height:1},u={x:l.x-c.x,y:l.y-c.y,...d},g=i({...s,active:o,dragOverlay:a,transform:{initial:l,final:u}}),[f]=g,v=g[g.length-1];if(JSON.stringify(f)===JSON.stringify(v))return;const h=null==r?void 0:r({active:o,dragOverlay:a,...s}),p=a.node.animate(g,{duration:t,easing:n,fill:"forwards"});return new Promise((e=>{p.onfinish=()=>{null==h||h(),e()}}))}}(t);return Ne(l,i.draggable.measure),u({active:{id:e,data:a.data,node:l,rect:i.draggable.measure(l)},draggableNodes:n,dragOverlay:{node:o,rect:i.dragOverlay.measure(s)},droppableContainers:r,measuringConfiguration:i,transform:d})}))}let Yt=0;function Ft(e){return o((()=>{if(null!=e)return Yt++,Yt}),[e])}const Kt=t.memo((e=>{let{adjustScale:n=!1,children:r,dropAnimation:i,style:o,transition:a,modifiers:l,wrapperElement:s="div",className:c,zIndex:d=999}=e;const{activatorEvent:g,active:f,activeNodeRect:v,containerNodeRect:h,draggableNodes:p,droppableContainers:m,dragOverlay:b,over:y,measuringConfiguration:w,scrollableAncestors:x,scrollableAncestorRects:D,windowRect:E}=Ot(),C=u(Et),R=Ft(null==f?void 0:f.id),S=Dt(l,{activatorEvent:g,active:f,activeNodeRect:v,containerNodeRect:h,draggingNodeRect:b.rect,over:y,overlayNodeRect:b.rect,scrollableAncestors:x,scrollableAncestorRects:D,transform:C,windowRect:E}),N=nt(v),I=Xt({config:i,draggableNodes:p,droppableContainers:m,measuringConfiguration:w}),O=N?b.setRef:void 0;return t.createElement(Lt,null,t.createElement(At,{animation:I},f&&R?t.createElement(Pt,{key:R,id:f.id,ref:O,as:s,activatorEvent:g,adjustScale:n,className:c,transition:a,rect:N,style:{zIndex:d,...o},transform:S},r):null))}));const Wt=e=>{let{containerNodeRect:t,draggingNodeRect:n,transform:r}=e;return n&&t?function(e,t,n){const r={...e};return t.top+e.y<=n.top?r.y=n.top-t.top:t.bottom+e.y>=n.top+n.height&&(r.y=n.top+n.height-t.bottom),t.left+e.x<=n.left?r.x=n.left-t.left:t.right+e.x>=n.left+n.width&&(r.x=n.left+n.width-t.right),r}(r,n,t):r};function Ut(e,t,n){const r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function Ht(e,t){return e.reduce(((e,n,r)=>{const i=t.get(n);return i&&(e[r]=i),e}),Array(e.length))}function Jt(e){return null!==e&&e>=0}const Vt={scaleX:1,scaleY:1};const qt=e=>{let{rects:t,activeIndex:n,overIndex:r,index:i}=e;const o=Ut(t,r,n),a=t[i],l=o[i];return l&&a?{x:l.left-a.left,y:l.top-a.top,scaleX:l.width/a.width,scaleY:l.height/a.height}:null},Gt={scaleX:1,scaleY:1};const Qt="Sortable",Zt=t.createContext({activeIndex:-1,containerId:Qt,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:qt,disabled:{draggable:!1,droppable:!1}});function $t(e){let{children:n,id:a,items:l,strategy:s=qt,disabled:c=!1}=e;const{active:d,dragOverlay:u,droppableRects:g,over:f,measureDroppableContainers:v}=Ot(),h=k(Qt,a),p=Boolean(null!==u.rect),m=o((()=>l.map((e=>"object"==typeof e&&"id"in e?e.id:e))),[l]),b=null!=d,y=d?m.indexOf(d.id):-1,w=f?m.indexOf(f.id):-1,x=i(m),D=!function(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}(m,x.current),E=-1!==w&&-1===y||D,C=function(e){return"boolean"==typeof e?{draggable:e,droppable:e}:e}(c);N((()=>{D&&b&&v(m)}),[D,m,b,v]),r((()=>{x.current=m}),[m]);const R=o((()=>({activeIndex:y,containerId:h,disabled:C,disableTransforms:E,items:m,overIndex:w,useDragOverlay:p,sortedRects:Ht(m,g),strategy:s})),[y,h,C.draggable,C.droppable,E,m,w,g,p,s]);return t.createElement(Zt.Provider,{value:R},n)}const _t=e=>{let{id:t,items:n,activeIndex:r,overIndex:i}=e;return Ut(n,r,i).indexOf(t)},en=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:i,items:o,newIndex:a,previousItems:l,previousContainerId:s,transition:c}=e;return!(!c||!r)&&((l===o||i!==a)&&(!!n||a!==i&&t===s))},tn={duration:200,easing:"ease"},nn="transform",rn=Y.Transition.toString({property:nn,duration:0,easing:"linear"}),on={roleDescription:"sortable"};function an(e){let{animateLayoutChanges:t=en,attributes:n,disabled:s,data:c,getNewIndex:d=_t,id:g,strategy:f,resizeObserverConfig:v,transition:h=tn}=e;const{items:p,containerId:m,activeIndex:b,disabled:y,disableTransforms:w,sortedRects:x,overIndex:D,useDragOverlay:E,strategy:C}=u(Zt),R=function(e,t){var n,r;if("boolean"==typeof e)return{draggable:e,droppable:!1};return{draggable:null!=(n=null==e?void 0:e.draggable)?n:t.draggable,droppable:null!=(r=null==e?void 0:e.droppable)?r:t.droppable}}(s,y),S=p.indexOf(g),I=o((()=>({sortable:{containerId:m,index:S,items:p},...c})),[m,c,S,p]),T=o((()=>p.slice(p.indexOf(g))),[p,g]),{rect:M,node:L,isOver:B,setNodeRef:P}=function(e){let{data:t,disabled:n=!1,id:o,resizeObserverConfig:l}=e;const s=k("Droppable"),{active:c,dispatch:d,over:g,measureDroppableContainers:f}=u(mt),v=i({disabled:n}),h=i(!1),p=i(null),m=i(null),{disabled:b,updateMeasurementsFor:y,timeout:w}={...Tt,...l},x=O(null!=y?y:o),D=rt({callback:a((()=>{h.current?(null!=m.current&&clearTimeout(m.current),m.current=setTimeout((()=>{f(Array.isArray(x.current)?x.current:[x.current]),m.current=null}),w)):h.current=!0}),[w]),disabled:b||!c}),E=a(((e,t)=>{D&&(t&&(D.unobserve(t),h.current=!1),e&&D.observe(e))}),[D]),[C,R]=A(E),S=O(t);return r((()=>{D&&C.current&&(D.disconnect(),h.current=!1,D.observe(C.current))}),[C,D]),r((()=>(d({type:Q.RegisterDroppable,element:{id:o,key:s,disabled:n,node:C,rect:p,data:S}}),()=>d({type:Q.UnregisterDroppable,key:s,id:o}))),[o]),r((()=>{n!==v.current.disabled&&(d({type:Q.SetDroppableDisabled,id:o,key:s,disabled:n}),v.current.disabled=n)}),[o,s,n,d]),{active:c,rect:p,isOver:(null==g?void 0:g.id)===o,node:C,over:g,setNodeRef:R}}({id:g,data:I,disabled:R.droppable,resizeObserverConfig:{updateMeasurementsFor:T,...v}}),{active:z,activatorEvent:X,activeNodeRect:F,attributes:K,setNodeRef:W,listeners:U,isDragging:H,over:J,setActivatorNodeRef:V,transform:q}=It({id:g,data:I,attributes:{...on,...n},disabled:R.draggable}),G=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return o((()=>e=>{t.forEach((t=>t(e)))}),t)}(P,W),Z=Boolean(z),$=Z&&!w&&Jt(b)&&Jt(D),_=!E&&H,ee=_&&$?q:null,te=$?null!=ee?ee:(null!=f?f:C)({rects:x,activeNodeRect:F,activeIndex:b,overIndex:D,index:S}):null,ne=Jt(b)&&Jt(D)?d({id:g,items:p,activeIndex:b,overIndex:D}):S,re=null==z?void 0:z.id,ie=i({activeId:re,items:p,newIndex:ne,containerId:m}),oe=p!==ie.current.items,ae=t({active:z,containerId:m,isDragging:H,isSorting:Z,id:g,index:S,items:p,newIndex:ie.current.newIndex,previousItems:ie.current.items,previousContainerId:ie.current.containerId,transition:h,wasDragging:null!=ie.current.activeId}),le=function(e){let{disabled:t,index:n,node:o,rect:a}=e;const[s,c]=l(null),d=i(n);return N((()=>{if(!t&&n!==d.current&&o.current){const e=a.current;if(e){const t=ge(o.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&c(n)}}n!==d.current&&(d.current=n)}),[t,n,o,a]),r((()=>{s&&c(null)}),[s]),s}({disabled:!ae,index:S,node:L,rect:M});return r((()=>{Z&&ie.current.newIndex!==ne&&(ie.current.newIndex=ne),m!==ie.current.containerId&&(ie.current.containerId=m),p!==ie.current.items&&(ie.current.items=p)}),[Z,ne,m,p]),r((()=>{if(re===ie.current.activeId)return;if(null!=re&&null==ie.current.activeId)return void(ie.current.activeId=re);const e=setTimeout((()=>{ie.current.activeId=re}),50);return()=>clearTimeout(e)}),[re]),{active:z,activeIndex:b,attributes:K,data:I,rect:M,index:S,newIndex:ne,items:p,isOver:B,isSorting:Z,isDragging:H,listeners:U,node:L,overIndex:D,over:J,setNodeRef:G,setActivatorNodeRef:V,setDroppableNodeRef:P,setDraggableNodeRef:W,transform:null!=le?le:te,transition:function(){if(le||oe&&ie.current.newIndex===S)return rn;if(_&&!j(X)||!h)return;if(Z||ae)return Y.Transition.toString({...h,property:nn});return}()}}function ln(e,t){"function"==typeof e?e(t):null!=e&&(e.current=t)}function sn(...e){return t=>{for(const n of e)ln(n,t)}}Le.Down,Le.Right,Le.Up,Le.Left;const cn={vertical:{modifiers:[e=>{let{transform:t}=e;return{...t,x:0}},Wt],strategy:e=>{var t;let{activeIndex:n,activeNodeRect:r,index:i,rects:o,overIndex:a}=e;const l=null!=(t=o[n])?t:r;if(!l)return null;if(i===n){const e=o[a];return e?{x:0,y:n<a?e.top+e.height-(l.top+l.height):e.top-l.top,...Gt}:null}const s=function(e,t,n){const r=e[t],i=e[t-1],o=e[t+1];if(!r)return 0;if(n<t)return i?r.top-(i.top+i.height):o?o.top-(r.top+r.height):0;return o?o.top-(r.top+r.height):i?r.top-(i.top+i.height):0}(o,i,n);return i>n&&i<=a?{x:0,y:-l.height-s,...Gt}:i<n&&i>=a?{x:0,y:l.height+s,...Gt}:{x:0,y:0,...Gt}}},horizontal:{modifiers:[e=>{let{transform:t}=e;return{...t,y:0}},Wt],strategy:e=>{var t;let{rects:n,activeNodeRect:r,activeIndex:i,overIndex:o,index:a}=e;const l=null!=(t=n[i])?t:r;if(!l)return null;const s=function(e,t,n){const r=e[t],i=e[t-1],o=e[t+1];if(!r||!i&&!o)return 0;if(n<t)return i?r.left-(i.left+i.width):o.left-(r.left+r.width);return o?o.left-(r.left+r.width):r.left-(i.left+i.width)}(n,a,i);if(a===i){const e=n[o];return e?{x:i<o?e.left+e.width-(l.left+l.width):e.left-l.left,y:0,...Vt}:null}return a>i&&a<=o?{x:-l.width-s,y:0,...Vt}:a<i&&a>=o?{x:l.width+s,y:0,...Vt}:{x:0,y:0,...Vt}}},mixed:{modifiers:[Wt],strategy:void 0}};function dn({value:t,onValueChange:n,collisionDetection:r=ie,modifiers:i,strategy:a,onMove:l,orientation:s="vertical",overlay:c,children:d,...u}){const[g,f]=e.useState(null),v=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return o((()=>[...t].filter((e=>null!=e))),[...t])}($(Je),$(qe),$(je)),h=cn[s];return e.createElement(Rt,{modifiers:i??h.modifiers,sensors:v,onDragStart:({active:e})=>f(e.id),onDragEnd:({active:e,over:r})=>{if(r&&e.id!==r?.id){const i=t.findIndex((t=>t.id===e.id)),o=t.findIndex((e=>e.id===r.id));l?l({activeIndex:i,overIndex:o}):n?.(Ut(t,i,o))}f(null)},onDragCancel:()=>f(null),collisionDetection:r,...u},e.createElement($t,{items:t,strategy:a??h.strategy},d),c?e.createElement(gn,{activeId:g},c):null)}const un={sideEffects:zt({styles:{active:{opacity:"0.4"}}})},gn=e.forwardRef((({activeId:t,dropAnimation:n=un,children:r,...i},o)=>e.createElement(Kt,{dropAnimation:n,...i},t?e.createElement(vn,{ref:o,value:t,className:"cursor-grabbing",asChild:!0},r):null)));gn.displayName="SortableOverlay";const fn=e.createContext({attributes:{},listeners:void 0,isDragging:!1});const vn=e.forwardRef((({value:t,asTrigger:n,asChild:r,className:i,...o},a)=>{const{attributes:l,listeners:s,setNodeRef:c,transform:d,transition:u,isDragging:g}=an({id:t}),f=e.useMemo((()=>({attributes:l,listeners:s,isDragging:g})),[l,s,g]),v={opacity:g?.5:1,transform:Y.Translate.toString(d),transition:u},h=r?p:"div";return e.createElement(fn.Provider,{value:f},e.createElement(h,{"data-state":g?"dragging":void 0,className:m("data-[state=dragging]:cursor-grabbing",{"cursor-grab":!g&&n},i),ref:sn(a,c),style:v,...n?l:{},...n?s:{},...o}))}));vn.displayName="SortableItem";const hn=e.forwardRef((({className:t,...n},r)=>{const{attributes:i,listeners:o,isDragging:a}=function(){const t=e.useContext(fn);if(!t)throw new Error("useSortableItem must be used within a SortableItem");return t}();return e.createElement(b,{ref:sn(r),"data-state":a?"dragging":void 0,className:m("cursor-grab data-[state=dragging]:cursor-grabbing",t),...i,...o,...n})}));hn.displayName="SortableDragHandle";export{dn as S,hn as a,vn as b,gn as c};
|
2
|
+
//# sourceMappingURL=sortable-7DK1K35h.mjs.map
|