UNPKG

@undp/design-system-react

Version:

React based design system for UNDP

2 lines 5.36 kB
const e=require("./rolldown-runtime-mLOUI7ql.cjs"),t=require("./utils-Dd9-5CFr.cjs"),n=require("./dist--OhUIyHO.cjs"),r=require("./dist-VI-VV5wq.cjs"),i=require("./dist-DluBSGxD.cjs"),a=require("./dist-CTSEb5uk.cjs"),o=require("./dist-odcXV7N3.cjs"),s=require("./dist-B7GyuuzQ.cjs"),c=require("./dist-ImWxW4aL.cjs");let l=require("react");l=e.r(l,1);let u=require("react/jsx-runtime");var d=Object.defineProperty,f=(e,t)=>d(e,`name`,{value:t,configurable:!0}),p,m=`HoverCard`,[h,g]=i.n(m,[c.i]),_=c.i(),[v,y]=h(m),b=f(e=>{let{__scopeHoverCard:t,children:n,open:r,defaultOpen:i,onOpenChange:o,openDelay:s=700,closeDelay:d=300}=e,f=_(t),p=l.useRef(0),h=l.useRef(0),g=l.useRef(!1),y=l.useRef(!1),[b,x]=a.t({prop:r,defaultProp:i??!1,onChange:o,caller:m}),S=l.useCallback(()=>{clearTimeout(h.current),p.current=window.setTimeout(()=>x(!0),s)},[s,x]),C=l.useCallback(()=>{clearTimeout(p.current),!g.current&&!y.current&&(h.current=window.setTimeout(()=>x(!1),d))},[d,x]),w=l.useCallback(()=>x(!1),[x]);return l.useEffect(()=>()=>{clearTimeout(p.current),clearTimeout(h.current)},[]),(0,u.jsx)(v,{scope:t,open:b,onOpenChange:x,onOpen:S,onClose:C,onDismiss:w,hasSelectionRef:g,isPointerDownOnContentRef:y,children:(0,u.jsx)(c.r,{...f,children:n})})},`HoverCard`),x=`HoverCardTrigger`,S=l.forwardRef(f(function(e,t){let{__scopeHoverCard:n,...i}=e,o=y(x,n),s=_(n);return(0,u.jsx)(c.t,{asChild:!0,...s,children:(0,u.jsx)(r.t.a,{"data-state":o.open?`open`:`closed`,...i,ref:t,onPointerEnter:a.n(e.onPointerEnter,O(o.onOpen)),onPointerLeave:a.n(e.onPointerLeave,O(o.onClose)),onFocus:a.n(e.onFocus,o.onOpen),onBlur:a.n(e.onBlur,o.onClose),onTouchStart:a.n(e.onTouchStart,e=>e.preventDefault())})})},`HoverCardTrigger`)),[C,w]=h(`HoverCardPortal`,{forceMount:void 0}),T=`HoverCardContent`,E=l.forwardRef(f(function(e,t){let n=w(T,e.__scopeHoverCard),{forceMount:r=n.forceMount,...i}=e,s=y(T,e.__scopeHoverCard);return(0,u.jsx)(o.t,{present:r||s.open,children:(0,u.jsx)(D,{"data-state":s.open?`open`:`closed`,...i,onPointerEnter:a.n(e.onPointerEnter,O(s.onOpen)),onPointerLeave:a.n(e.onPointerLeave,O(s.onClose)),ref:t})})},`HoverCardContent`)),D=l.forwardRef(f(function(e,t){let{__scopeHoverCard:r,onEscapeKeyDown:i,onPointerDownOutside:o,onFocusOutside:d,onInteractOutside:m,...h}=e,g=y(T,r),v=_(r),b=l.useRef(null),x=n.i(t,b),[S,C]=l.useState(!1);return l.useEffect(()=>{if(S){let e=document.body;return p=e.style.userSelect||e.style.webkitUserSelect,e.style.userSelect=`none`,e.style.webkitUserSelect=`none`,()=>{e.style.userSelect=p,e.style.webkitUserSelect=p}}},[S]),l.useEffect(()=>{if(b.current){let e=f(()=>{C(!1),g.isPointerDownOnContentRef.current=!1,setTimeout(()=>{document.getSelection()?.toString()!==``&&(g.hasSelectionRef.current=!0)})},`handlePointerUp`);return document.addEventListener(`pointerup`,e),()=>{document.removeEventListener(`pointerup`,e),g.hasSelectionRef.current=!1,g.isPointerDownOnContentRef.current=!1}}},[g.isPointerDownOnContentRef,g.hasSelectionRef]),l.useEffect(()=>{b.current&&k(b.current).forEach(e=>e.setAttribute(`tabindex`,`-1`))}),(0,u.jsx)(s.n,{asChild:!0,disableOutsidePointerEvents:!1,onInteractOutside:m,onEscapeKeyDown:i,onPointerDownOutside:o,onFocusOutside:a.n(d,e=>{e.preventDefault()}),onDismiss:g.onDismiss,children:(0,u.jsx)(c.n,{...v,...h,onPointerDown:a.n(h.onPointerDown,e=>{e.currentTarget.contains(e.target)&&C(!0),g.hasSelectionRef.current=!1,g.isPointerDownOnContentRef.current=!0}),ref:x,style:{...h.style,userSelect:S?`text`:void 0,WebkitUserSelect:S?`text`:void 0,"--radix-hover-card-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-hover-card-content-available-width":`var(--radix-popper-available-width)`,"--radix-hover-card-content-available-height":`var(--radix-popper-available-height)`,"--radix-hover-card-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-hover-card-trigger-height":`var(--radix-popper-anchor-height)`}})})},`HoverCardContentImpl`));function O(e){return t=>t.pointerType===`touch`?void 0:e()}f(O,`excludeTouch`);function k(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:f(e=>e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP,`acceptNode`)});for(;n.nextNode();)t.push(n.currentNode);return t}f(k,`getTabbableNodes`);var A=b,j=S,M=E,N=A,P=l.default.forwardRef(({className:e,children:n,...r},i)=>(0,u.jsx)(j,{...r,ref:i,className:t.t(`cursor-pointer text-content-primary`,e),children:n}));P.displayName=`HoverCardTrigger`;var F=l.default.forwardRef(({className:e,align:n=`center`,sideOffset:r=4,...i},a)=>(0,u.jsx)(M,{...i,ref:a,align:n,sideOffset:r,className:t.t(`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 z-50 w-64 bg-surface/90 p-2 text-content-primary text-sm outline-hidden backdrop-blur-frosted data-[state=closed]:animate-out data-[state=open]:animate-in`,e)}));F.displayName=M.displayName,Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return N}}); //# sourceMappingURL=hover-card-DEyKcMRF.cjs.map