Module 342876

1,426 characters · in no known chunk
Dependencies
Required by (1)
Lazily required by (0)none
Lazily requires (0)none
Source Raw
function(e,t,n){"use strict";n.d(t,{b:()=>o});var r=n(371926),i=n(36310),s=n(74733),a=n(64700);function o(e){let{collection:t,focusMode:n}=e,o=e.UNSAFE_selectionState||(0,i.R)(e),l=(0,a.useMemo)(()=>e.disabledKeys?new Set(e.disabledKeys):new Set,[e.disabledKeys]),u=o.setFocusedKey;o.setFocusedKey=(e,i)=>{if("cell"===n&&null!=e){let n=t.getItem(e);if((null==n?void 0:n.type)==="item"){var s,a,o,l;let u=(0,r.iQ)(n,t);e="last"===i?null!=(o=null==(s=(0,r.W)(u))?void 0:s.key)?o:null:null!=(l=null==(a=(0,r.ue)(u))?void 0:a.key)?l:null}}u(e,i)};let c=(0,a.useMemo)(()=>new(0,s.Y)(t,o),[t,o]),d=(0,a.useRef)(null);return(0,a.useEffect)(()=>{if(null!=o.focusedKey&&d.current&&!t.getItem(o.focusedKey)){let e=d.current.getItem(o.focusedKey),n=(null==e?void 0:e.parentKey)!=null&&("cell"===e.type||"rowheader"===e.type||"column"===e.type)?d.current.getItem(e.parentKey):e;if(!n)return void o.setFocusedKey(null);let i=d.current.rows,s=t.rows,a=i.length-s.length,l=Math.min(a>1?Math.max(n.index-a+1,0):n.index,s.length-1),u=null;for(;l>=0;){if(!c.isDisabled(s[l].key)&&"headerrow"!==s[l].type){u=s[l];break}l<s.length-1?l++:(l>n.index&&(l=n.index),l--)}if(u){let i=u.hasChildNodes?[...(0,r.iQ)(u,t)]:[],s=u.hasChildNodes&&n!==e&&e&&e.index<i.length?i[e.index].key:u.key;o.setFocusedKey(s)}else o.setFocusedKey(null)}d.current=t},[t,c,o,o.focusedKey]),{collection:t,disabledKeys:l,isKeyboardNavigationDisabled:!1,selectionManager:c}}}