UNPKG

@undp/design-system-react

Version:

React based design system for UNDP

2 lines 4.47 kB
const e=require("./rolldown-runtime-mLOUI7ql.cjs"),t=require("./dist--OhUIyHO.cjs"),n=require("./dist-VI-VV5wq.cjs"),r=require("./dist-DluBSGxD.cjs"),i=require("./dist-C4aT9Auh.cjs"),a=require("./dist-CTSEb5uk.cjs"),o=require("./dist-DnbpoIgp.cjs"),s=require("./dist-Cwg3Q4xh.cjs"),c=require("./dist-Cepu74FS.cjs");let l=require("react");l=e.r(l,1);let u=require("react/jsx-runtime");var d=!1;function f(){let[e,t]=l.useState(d);return l.useEffect(()=>{d||(d=!0,t(!0))},[]),e}var p=l.useSyncExternalStore;function m(){return()=>{}}function h(){return p(m,()=>!0,()=>!1)}var g=typeof p==`function`?h:f,_=Object.defineProperty,v=(e,t)=>_(e,`name`,{value:t,configurable:!0}),y=`rovingFocusGroup.onEntryFocus`,b={bubbles:!1,cancelable:!0},x=`RovingFocusGroup`,[S,C,w]=i.t(x),[T,E]=r.n(x,[w]),[D,O]=T(x),k=l.forwardRef(v(function(e,t){return(0,u.jsx)(S.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,u.jsx)(S.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,u.jsx)(A,{...e,ref:t})})})},`RovingFocusGroup`)),A=l.forwardRef(v(function(e,r){let{__scopeRovingFocusGroup:i,orientation:o,loop:d=!1,dir:f,currentTabStopId:p,defaultCurrentTabStopId:m,onCurrentTabStopIdChange:h,onEntryFocus:g,preventScrollOnEntryFocus:_=!1,...v}=e,S=l.useRef(null),w=t.i(r,S),T=s.t(f),[E,O]=a.t({prop:p,defaultProp:m??null,onChange:h,caller:x}),[k,A]=l.useState(!1),j=c.t(g),M=C(i),N=l.useRef(!1),[P,F]=l.useState(0);return l.useEffect(()=>{let e=S.current;if(e)return e.addEventListener(y,j),()=>e.removeEventListener(y,j)},[j]),(0,u.jsx)(D,{scope:i,orientation:o,dir:T,loop:d,currentTabStopId:E,onItemFocus:l.useCallback(e=>O(e),[O]),onItemShiftTab:l.useCallback(()=>A(!0),[]),onFocusableItemAdd:l.useCallback(()=>F(e=>e+1),[]),onFocusableItemRemove:l.useCallback(()=>F(e=>e-1),[]),children:(0,u.jsx)(n.t.div,{tabIndex:k||P===0?-1:0,"data-orientation":o,...v,ref:w,style:{outline:`none`,...e.style},onMouseDown:a.n(e.onMouseDown,()=>{N.current=!0}),onFocus:a.n(e.onFocus,e=>{let t=!N.current;if(e.target===e.currentTarget&&t&&!k){let t=new CustomEvent(y,b);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=M().filter(e=>e.focusable);I([e.find(e=>e.active),e.find(e=>e.id===E),...e].filter(Boolean).map(e=>e.ref.current),_)}}N.current=!1}),onBlur:a.n(e.onBlur,()=>A(!1))})})},`RovingFocusGroupImpl`)),j=`RovingFocusGroupItem`,M=l.forwardRef(v(function(e,t){let{__scopeRovingFocusGroup:i,focusable:s=!0,active:c=!1,tabStopId:d,children:f,...p}=e,m=o.t(),h=d||m,_=O(j,i),v=_.currentTabStopId===h,y=C(i),{onFocusableItemAdd:b,onFocusableItemRemove:x,currentTabStopId:w}=_,T=g();return r.t(()=>{if(!(!T||!s))return b(),()=>x()},[T,s,b,x]),l.useEffect(()=>{if(!(T||!s))return b(),()=>x()},[T,s,b,x]),(0,u.jsx)(S.ItemSlot,{scope:i,id:h,focusable:s,active:c,children:(0,u.jsx)(n.t.span,{tabIndex:v?0:-1,"data-orientation":_.orientation,...p,ref:t,onMouseDown:a.n(e.onMouseDown,e=>{s?_.onItemFocus(h):e.preventDefault()}),onFocus:a.n(e.onFocus,()=>_.onItemFocus(h)),onKeyDown:a.n(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){_.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=F(e,_.orientation,_.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=y().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=_.loop?L(n,r+1):n.slice(r+1)}setTimeout(()=>I(n))}}),children:typeof f==`function`?f({isCurrentTabStop:v,hasTabStop:w!=null}):f})})},`RovingFocusGroupItem`)),N={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function P(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}v(P,`getDirectionAwareKey`);function F(e,t,n){let r=P(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return N[r]}v(F,`getFocusIntent`);function I(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}v(I,`focusFirst`);function L(e,t){return e.map((n,r)=>e[(t+r)%e.length])}v(L,`wrapArray`);var R=k,z=M;Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return z}}); //# sourceMappingURL=dist-BhZ2FMkV.cjs.map