@necto-react/hooks 2.12.5 → 2.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/index.cjs +30 -1
- package/dist/index.d.cts +591 -159
- package/dist/index.d.ts +591 -159
- package/dist/index.global.js +31 -4
- package/dist/index.js +30 -1
- package/package.json +34 -21
- package/LICENSE +0 -21
package/README.md
CHANGED
|
@@ -16,4 +16,5 @@
|
|
|
16
16
|
<a aria-label="License" href="https://github.com/nectoutil/NodeKit/blob/main/LICENSE">
|
|
17
17
|
<img src="https://img.shields.io/badge/License-MIT-97CA25.svg?style=for-the-badge">
|
|
18
18
|
</a>
|
|
19
|
+
<img src="https://img.shields.io/badge/-ReactJs-61DAFB?logo=react&logoColor=white&style=for-the-badge">
|
|
19
20
|
</div>
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1,30 @@
|
|
|
1
|
-
"use strict";var nt=Object.create;var ee=Object.defineProperty;var rt=Object.getOwnPropertyDescriptor;var ot=Object.getOwnPropertyNames;var st=Object.getPrototypeOf,ut=Object.prototype.hasOwnProperty;var it=(e,t)=>{for(var n in t)ee(e,n,{get:t[n],enumerable:!0})},he=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of ot(t))!ut.call(e,r)&&r!==n&&ee(e,r,{get:()=>t[r],enumerable:!(o=rt(t,r))||o.enumerable});return e};var ct=(e,t,n)=>(n=e!=null?nt(st(e)):{},he(t||!e||!e.__esModule?ee(n,"default",{value:e,enumerable:!0}):n,e)),at=e=>he(ee({},"__esModule",{value:!0}),e);var yt={};it(yt,{getInteractionModality:()=>j,useContextProps:()=>Me,useDisabled:()=>re,useDisabledProps:()=>Se,useEffectEvent:()=>q,useElementVisibility:()=>Ce,useFocus:()=>I,useFocusRing:()=>Oe,useFocusVisible:()=>ke,useFocusVisibleListener:()=>A,useFocusWithin:()=>ie,useFocusable:()=>He,useGlobalListeners:()=>$,useHover:()=>ze,useId:()=>qe,useKeyboard:()=>se,useMounted:()=>fe,usePress:()=>Ye,useRenderer:()=>Qe,useSlottedContext:()=>ne,useSupported:()=>mt,useSyncContextRef:()=>ue,useSyntheticBlurEvent:()=>K});module.exports=at(yt);var te=require("react"),Re=require("@necto/mergers");function Me({props:e,ref:t,context:n}){let o=ne({context:n,slot:e.slot})||{},{ref:r=null,...u}=o,f=(0,te.useRef)(null),c=(0,te.useCallback)(a=>{f.current=a,typeof t=="function"?t(a):t&&(t.current=a),typeof r=="function"?r(a):r&&typeof r=="object"&&(r.current=a)},[t,r]),i=(0,Re.mergeProps)(u,e);return"style"in u&&u.style&&"style"in e&&e.style&&(typeof u.style=="function"||typeof e.style=="function"?i.style=a=>{let m=typeof u.style=="function"?u.style(a):u.style,d={...a.defaultStyle,...m},b=typeof e.style=="function"?e.style({...a,defaultStyle:d}):e.style;return{...d,...b}}:i.style={...u.style,...e.style}),[i,c]}var Ue=require("react"),Le=require("@necto-react/contexts");function re(e={}){let{type:t="general",defaultFallback:n=!1}=e;return((0,Ue.useContext)(Le.DisabledContext)||{})[t]??n}var we=require("react");function Se(e={}){let{type:t="general",extraProps:n={}}=e,o=re({type:t,defaultFallback:!1});return(0,we.useMemo)(()=>{let r={...n};return o&&(r={...r,...typeof n.onClick=="function"||typeof n.onChange=="function"?{disabled:o}:{},"aria-disabled":o}),r},[o,n])}var U=require("react");function Ce(e={}){let{partialVisibility:t=!1,threshold:n=0,rootMargin:o="0px",root:r=null,active:u=!0,once:f=!1,onChange:c}=e,[i,a]=(0,U.useState)(null),[m,d]=(0,U.useState)(!1),[b,E]=(0,U.useState)(null),v=(0,U.useRef)(!1),p=(0,U.useRef)(null),l=q(M=>{let L=M[0],k=L.isIntersecting,X={isIntersecting:L.isIntersecting,intersectionRatio:L.intersectionRatio,intersectionRect:L.intersectionRect,boundingClientRect:L.boundingClientRect,rootBounds:L.rootBounds,time:L.time};E(X),d(S=>f&&v.current?!0:k&&f?(v.current=!0,S!==!0&&c&&c(!0),!0):S!==k?(c&&c(k),k):S)}),T=(0,U.useCallback)(M=>{a(M)},[]);return(0,U.useEffect)(()=>{if(!u||!i)return;let M;return t===!0?M=[0,.1,.25,.5,.75,1]:typeof t=="string"?M=.01:M=n,p.current=new IntersectionObserver(l,{root:r,rootMargin:o,threshold:M}),p.current.observe(i),()=>{p.current&&p.current.disconnect()}},[u,i,r,o,n,t]),[T,m,b]}var oe=require("react");var B=require("@necto/dom");function I(e={}){let{isDisabled:t,onFocus:n,onBlur:o,onFocusChange:r}=e,u=(0,oe.useCallback)((a,m)=>{a?(n?.(m),r?.(!0)):(o?.(m),r?.(!1))},[n,o,r]),f=(0,oe.useCallback)(a=>{a.target===a.currentTarget&&u(!1,a)},[u]),c=K({onBlur:f}),i=(0,oe.useCallback)(a=>{let m=(0,B.getOwnerDocument)(a.target),d=m?(0,B.getActiveElement)(m):(0,B.getActiveElement)();a.target===a.currentTarget&&d===(0,B.getEventTarget)(a.nativeEvent)&&(u(!0,a),c(a))},[u,c]);return{focusProps:{...t?{}:{onFocus:i,onBlur:f}}}}var w=require("@necto/dom"),de=require("@necto/mergers"),W=require("react"),De=require("@necto-react/contexts");function He(e,t){let{autoFocus:n,isDisabled:o,excludeFromTabOrder:r}=e,{focusProps:u}=I(e),{keyboardProps:f}=se(e),c=(0,W.useContext)(De.FocusableContext)||{},i=(0,W.useRef)(n);ue({context:c,ref:t});let{ref:a,...m}=c,d=(0,w.getOwnerDocument)(t.current),b=(0,w.getActiveElement)(d);(0,W.useEffect)(()=>{if(i.current&&t.current)if(j()==="virtual"){let v=b;(0,w.runAfterTransition)(()=>{(0,w.getActiveElement)(d)===v&&t.current?.isConnected&&(0,w.focusWithoutScrolling)(t.current)})}else(0,w.focusWithoutScrolling)(t.current);i.current=!1},[t]);let E=r?-1:0;return o&&(E=void 0),{focusableProps:(0,de.mergeProps)({...(0,de.mergeProps)(u??{},f),tabIndex:E},o?{}:m)}}var C=require("react");var lt=null;function Oe(e={}){let{within:t=!1,isTextInput:n=!1,autoFocus:o=!1}=e,r=(0,C.useRef)({isFocused:o,isFocusVisible:o||lt!=="pointer"}),[u,f]=(0,C.useState)(o),[c,i]=(0,C.useState)(()=>r.current.isFocused&&r.current.isFocusVisible),a=(0,C.useCallback)(()=>{i(r.current.isFocused&&r.current.isFocusVisible)},[]),m=(0,C.useCallback)(E=>{r.current.isFocused=E,f(E),a()},[a]);A({fn:E=>{r.current.isFocusVisible=E,a()},deps:[],opts:{isTextInput:n}});let{focusProps:d={}}=I({isDisabled:t,onFocusChange:m})||{},{focusWithinProps:b={}}=ie({isDisabled:!t,onFocusWithinChange:m})||{};return{isFocused:u,isFocusVisible:c,focusProps:t?b:d}}var Ve=require("react");function ke(e={}){let{isTextInput:t,autoFocus:n}=e,[o,r]=(0,Ve.useState)(n||j()!=="pointer");return A({fn:u=>r(u),deps:[t],opts:{isTextInput:t}}),{isFocusVisible:o}}var G=new Map,ce=new Set,Be=!1,me=null,Ie=!1,x={get hasEventBeforeFocus(){return Be},set hasEventBeforeFocus(e){Be=e},get hasBlurredWindowRecently(){return Ie},set hasBlurredWindowRecently(e){Ie=e},get currentModality(){return me},set currentModality(e){me=e}};function j(){return me}var Ke=require("std-env"),We=require("react"),je=require("@necto-react/helpers"),N=require("@necto/dom");function Ee(e,t){ce.forEach(n=>n(e,t))}function ft(e){return!(e.metaKey||Ke.isMacOS&&e.altKey||e.ctrlKey||["Control","Shift","Meta"].includes(e.key))}function Ae(e){ft(e)&&(x.hasEventBeforeFocus=!0,x.currentModality="keyboard",Ee("keyboard",e))}function ye(e){["mousedown","pointerdown"].includes(e.type)&&(x.hasEventBeforeFocus=!0,x.currentModality="pointer",Ee("pointer",e))}function Ge(e){[window,document].includes(e.target)||!e.isTrusted||!x.hasEventBeforeFocus&&!x.hasBlurredWindowRecently||(!x.hasEventBeforeFocus&&!x.hasBlurredWindowRecently&&(x.currentModality="virtual",Ee("virtual",e)),x.hasEventBeforeFocus=!1,x.hasBlurredWindowRecently=!1)}function Ne(){x.hasEventBeforeFocus=!1,x.hasBlurredWindowRecently=!0}function pt(e){let t=(0,N.getOwnerWindow)(e),n=(0,N.getOwnerDocument)(e);if(typeof window>"u"||typeof document>"u"||G.has(t))return;let o=t.HTMLElement.prototype.focus;t.HTMLElement.prototype.focus=function(...r){x.hasEventBeforeFocus=!0,o.apply(this,r)},n.addEventListener("keydown",Ae,!0),n.addEventListener("click",ye,!0),t.addEventListener("focus",Ge,!0),t.addEventListener("blur",Ne,!1),typeof PointerEvent<"u"&&n.addEventListener("pointerdown",ye,!0),G.set(t,{focus:o})}function dt(e){let t=(0,N.getOwnerWindow)(e),n=(0,N.getOwnerDocument)(e);if(!G.has(t))return;let{focus:o}=G.get(t);t.HTMLElement.prototype.focus=o,n.removeEventListener("keydown",Ae,!0),n.removeEventListener("click",ye,!0),t.removeEventListener("focus",Ge,!0),t.removeEventListener("blur",Ne,!1),G.delete(t)}function A(e){let{fn:t,deps:n,opts:o}=e;typeof window>"u"||typeof document>"u"||(pt(),(0,We.useEffect)(()=>{let r=(u,f)=>{(0,je.isKeyboardFocusEvent)(!!o?.isTextInput,u,f)&&t(x.currentModality!=="pointer")};return ce.add(r),()=>{ce.delete(r),dt()}},n))}var Y=require("react"),$e=require("@necto-react/helpers");var D=require("@necto/dom");function ie(e){let{isDisabled:t,onFocusWithin:n,onBlurWithin:o,onFocusWithinChange:r}=e,u=(0,Y.useRef)({isFocusWithin:!1}),{addGlobalListener:f,removeAllGlobalListeners:c}=$(),i=(0,Y.useCallback)(d=>{d.currentTarget.contains(d.target)&&u.current.isFocusWithin&&!d.currentTarget.contains(d.relatedTarget)&&(u.current.isFocusWithin=!1,c(),o&&o(d),r&&r(!1))},[o,r,c]),a=K({onBlur:i}),m=(0,Y.useCallback)(d=>{if(!d.currentTarget.contains(d.target))return;let b=(0,D.getOwnerDocument)(d.target),E=(0,D.getActiveElement)(b);if(!u.current.isFocusWithin&&E===(0,D.getEventTarget)(d.nativeEvent)){n&&n(d),r&&r(!0),u.current.isFocusWithin=!0,a(d);let v=d.currentTarget;f(b,"focus",p=>{if(u.current.isFocusWithin&&!(0,D.nodeContains)(v,p.target)&&b.defaultView&&typeof b.defaultView.FocusEvent=="function"){let l=new b.defaultView.FocusEvent("blur",{relatedTarget:p.target});Object.defineProperty(l,"target",{value:v}),Object.defineProperty(l,"currentTarget",{value:v});let T=(0,$e.createSyntheticEvent)(l);i(T)}},{capture:!0})}},[n,r,a,f,i]);return t?{focusWithinProps:{onFocus:void 0,onBlur:void 0}}:{focusWithinProps:{onFocus:m,onBlur:i}}}var H=require("react");function $(){let e=(0,H.useRef)(new Map),t=(0,H.useCallback)((r,u,f,c)=>{let i=typeof c=="object"&&c?.once?(...a)=>{e.current.delete(f),f(...a)}:f;e.current.set(f,{type:u,eventTarget:r,options:c}),r.addEventListener(u,i,c)},[]),n=(0,H.useCallback)((r,u,f,c)=>{let i=e.current.get(f),a=i?.options?.once?i.fn:f;r.removeEventListener(u,a,c),e.current.delete(f)},[]),o=(0,H.useCallback)(()=>{e.current.forEach((r,u)=>{r.eventTarget.removeEventListener(r.type,u,r.options)}),e.current.clear()},[]);return(0,H.useEffect)(()=>()=>o(),[o]),{addGlobalListener:t,removeGlobalListener:n,removeAllGlobalListeners:o}}var ae=require("std-env");var le=require("@necto/dom"),h=require("react");function ze(e={}){let{onHoverStart:t,onHoverChange:n,onHoverEnd:o,isDisabled:r}=e,[u,f]=(0,h.useState)(!1),c=(0,h.useRef)({hoverCount:0,ignoreEmulated:!1}),i=(0,h.useRef)({isHovered:!1,ignoreEmulatedMouseEvents:!1,pointerType:"",target:null}).current,{addGlobalListener:a,removeAllGlobalListeners:m}=$(),d=(0,h.useCallback)(()=>{c.current.ignoreEmulated=!0,setTimeout(()=>{c.current.ignoreEmulated=!1},50)},[]);(0,h.useEffect)(()=>{let p=T=>{T.pointerType==="touch"&&d()};if(typeof document>"u")return;let l=c.current;return l.hoverCount++,typeof PointerEvent<"u"?document.addEventListener("pointerup",p):ae.isTest&&document.addEventListener("touchend",d),()=>{l.hoverCount--,l.hoverCount===0&&(typeof PointerEvent<"u"?document.removeEventListener("pointerup",p):ae.isTest&&document.removeEventListener("touchend",d))}},[d]);let b=(0,h.useCallback)((p,l)=>{r||l==="touch"||i.isHovered||!(p.currentTarget&&p.currentTarget.contains(p.target))||(i.isHovered=!0,i.pointerType=l,i.target=p.currentTarget,a((0,le.getOwnerDocument)(p.target instanceof Element?p.target:null),"pointerover",T=>{i.isHovered&&i.target&&!(0,le.nodeContains)(i.target,T.target)&&E(T,T.pointerType)},{capture:!0}),t?.({type:"hoverstart",target:p.currentTarget,pointerType:l}),n?.(!0),f(!0))},[r,t,n,a,i]),E=(0,h.useCallback)((p,l)=>{l==="touch"||!i.isHovered||!i.target||(i.isHovered=!1,i.pointerType="",i.target=null,m(),o?.({type:"hoverend",target:p.currentTarget,pointerType:l}),n?.(!1),f(!1))},[o,n,m,i.target,i]),v=(0,h.useMemo)(()=>{let p={};return typeof PointerEvent<"u"?(p.onPointerEnter=l=>{c.current.ignoreEmulated&&l.pointerType==="mouse"||b(l,l.pointerType)},p.onPointerLeave=l=>{!r&&l.currentTarget instanceof Element&&l.currentTarget.contains(l.target)&&E(l,l.pointerType)}):ae.isTest&&(p.onTouchStart=()=>{i.ignoreEmulatedMouseEvents=!0},p.onMouseEnter=l=>{!i.ignoreEmulatedMouseEvents&&!c.current.ignoreEmulated&&b(l.nativeEvent,"mouse"),i.ignoreEmulatedMouseEvents=!1},p.onMouseLeave=l=>{!r&&l.currentTarget.contains(l.target)&&E(l.nativeEvent,"mouse")}),p},[r,b,E,i]);return(0,h.useEffect)(()=>{r&&i.isHovered&&E({currentTarget:i.target},i.pointerType)},[r,E,i.isHovered,i.pointerType,i.target]),{hoverProps:v,isHovered:u}}var _e=require("std-env");var ve={prefix:String(Math.round(Math.random()*1e10)),current:0},J=new Map,Q=typeof FinalizationRegistry<"u"?new FinalizationRegistry(e=>{J.delete(e)}):null;var R=ct(require("react"),1);function qe(e={}){let{prefix:t="necto",defaultId:n}=e,[o,r]=(0,R.useState)(()=>n),u=(0,R.useRef)(null),f=(0,R.useRef)({}),c=(()=>{if(n)return n;let i=typeof R.default.useId=="function"?(0,R.useId)():String(++ve.current);return`${_e.isTest?t:`${t}${ve.prefix}`}-${i}`})();return(0,R.useEffect)(()=>{if(typeof window<"u"&&window.document?.createElement){let i=J.get(c)||[],a={current:u.current};i.some(m=>m===a)||J.set(c,[...i,a])}return Q&&Q.register(f.current,c),()=>{Q&&Q.unregister(f.current),J.delete(c)}},[c]),(0,R.useEffect)(()=>{let i=u.current;i&&(r(i),u.current=null)},[]),c}var be=require("@necto-react/helpers");function se(e){return{keyboardProps:e.isDisabled?{}:{onKeyDown:e.onKeyDown?(0,be.createEventHandler)(t=>e.onKeyDown?.(t.nativeEvent)):void 0,onKeyUp:e.onKeyUp?(0,be.createEventHandler)(t=>e.onKeyUp?.(t.nativeEvent)):void 0}}}var O=require("react");function fe(e={}){let{type:t="function"}=e,n=(0,O.useRef)(!1),[o,r]=(0,O.useState)(!1),u=(0,O.useCallback)(()=>n.current,[]);return(0,O.useEffect)(()=>(n.current=!0,r(!0),()=>{n.current=!1,r(!1)}),[]),t==="ref"?n:t==="boolean"?o:u}var P=require("@necto/dom"),y=require("react");function F(e,t,n){return{type:e,pointerType:t,target:n.currentTarget??n.target,shiftKey:n.shiftKey,ctrlKey:n.ctrlKey,metaKey:n.metaKey,altKey:n.altKey}}function Ye(e={}){let{isDisabled:t,preventFocusOnPress:n,allowTextSelectionOnPress:o,ref:r,onPress:u,onPressStart:f,onPressEnd:c,onPressChange:i,onPressUp:a,onClick:m}=e,[d,b]=(0,y.useState)(!1),E=(0,y.useRef)(!1),v=(0,y.useRef)(null),p=(0,y.useRef)(!1),l=(0,y.useCallback)(s=>{d!==s&&(b(s),i?.(s))},[d,i]),T=(0,y.useCallback)(s=>{if(!p.current)return;let g=v.current&&v.current instanceof Node&&s.target instanceof Node&&v.current.contains(s.target);if(p.current=!1,l(!1),!o&&v.current instanceof HTMLElement&&(0,P.restoreTextSelection)(v.current),s.target){let _={...F("pressend","mouse",s),target:s.target};c?.(_),a?.(_),g&&u?.(_)}},[c,a,u,l,o]),M=(0,y.useCallback)(s=>{if(t||s.button!==0||E.current)return;n&&s.preventDefault(),o||(0,P.disableTextSelection)(s.currentTarget),p.current=!0,v.current=s.currentTarget,l(!0);let g=F("pressstart","mouse",s);f?.(g),window.addEventListener("mouseup",T,{once:!0})},[t,n,o,f,l,T]),L=(0,y.useCallback)(s=>{if(t||s.button!==0||!p.current)return;p.current=!1,l(!1),!o&&s.currentTarget instanceof HTMLElement&&(0,P.restoreTextSelection)(s.currentTarget);let g=F("pressend","mouse",s);c?.(g),a?.(g),s.currentTarget instanceof Node&&s.currentTarget.contains(s.target)&&u?.(F("press","mouse",s))},[t,u,c,a,l,o]),k=(0,y.useCallback)(s=>{d&&(l(!1),c?.(F("pressend","mouse",s)),!o&&s.currentTarget instanceof HTMLElement&&(0,P.restoreTextSelection)(s.currentTarget))},[d,l,c,o]),X=(0,y.useCallback)(s=>{p.current&&!d&&(l(!0),f?.(F("pressstart","mouse",s)))},[d,f,l]),S=(0,y.useCallback)(s=>{if(!p.current)return;p.current=!1,l(!1),!o&&v.current instanceof HTMLElement&&(0,P.restoreTextSelection)(v.current);let g={...F("pressend","touch",s),target:s.target};c?.(g),a?.(g)},[c,a,l,o]),Z=(0,y.useCallback)(s=>{if(!p.current)return;p.current=!1,l(!1),!o&&v.current instanceof HTMLElement&&(0,P.restoreTextSelection)(v.current);let g={...F("pressend","touch",s),target:s.target};c?.(g)},[c,l,o]),ge=(0,y.useCallback)(s=>{t||(o||(0,P.disableTextSelection)(s.currentTarget),E.current=!0,setTimeout(()=>{E.current=!1},100),p.current=!0,v.current=s.currentTarget,l(!0),f?.(F("pressstart","touch",s)),window.addEventListener("touchend",S,{once:!0}),window.addEventListener("touchcancel",Z,{once:!0}))},[t,f,l,o,S,Z]),xe=(0,y.useCallback)(s=>{if(t||!p.current)return;p.current=!1,l(!1),!o&&s.currentTarget instanceof HTMLElement&&(0,P.restoreTextSelection)(s.currentTarget);let g=F("pressend","touch",s);c?.(g),a?.(g),s.currentTarget instanceof Node&&s.currentTarget.contains(s.target)&&u?.(F("press","touch",s))},[t,u,c,a,l,o]),Fe=(0,y.useCallback)(s=>{if(t)return;(s.key==="Enter"||s.key===" ")&&!d&&(s.key===" "&&s.preventDefault(),o||(0,P.disableTextSelection)(),l(!0),p.current=!0,f?.(F("pressstart","keyboard",s)))},[t,d,f,l,o]),Pe=(0,y.useCallback)(s=>{if(t)return;if((s.key==="Enter"||s.key===" ")&&d){l(!1),p.current=!1,o||(0,P.restoreTextSelection)();let _=F("pressend","keyboard",s);c?.(_),a?.(F("pressup","keyboard",s)),u?.(F("press","keyboard",s))}},[t,d,u,c,a,l,o]),Te=(0,y.useCallback)(s=>{if(t){s.preventDefault();return}E.current||m?.(s)},[t,m]);(0,y.useEffect)(()=>()=>{window.removeEventListener("mouseup",T),window.removeEventListener("touchend",S),window.removeEventListener("touchcancel",Z)},[T,S,Z]);let tt=(0,y.useMemo)(()=>({onMouseDown:M,onMouseUp:L,onMouseLeave:k,onMouseEnter:X,onTouchStart:ge,onTouchEnd:xe,onKeyDown:Fe,onKeyUp:Pe,onClick:Te}),[M,L,k,X,ge,xe,Fe,Pe,Te]);return(0,y.useEffect)(()=>{let s=r?.current;s&&s instanceof(0,P.getOwnerWindow)(s).Element&&(0,P.getOwnerWindow)(s).getComputedStyle(s).touchAction==="auto"&&(s.style.touchAction="pan-x pan-y pinch-zoom")},[r]),{pressProps:tt,isPressed:d}}var Je=require("react");function Qe(e){let{className:t,style:n,children:o,defaultClassName:r="necto",defaultChildren:u,defaultStyle:f,values:c}=e;return(0,Je.useMemo)(()=>{let i=typeof t=="function"?t({...c,defaultClassName:r}):`${r} ${t}`,a=typeof n=="function"?n({...c,defaultStyle:f||{}}):{...f,...n},m=typeof o=="function"?o({...c,defaultChildren:u}):o??u;return{className:i,style:a,children:m}},[t,n,o,r,u,f,c])}var Xe=require("react");function ne(e){let{context:t,slot:n}=e,o=(0,Xe.useContext)(t);if(n===null)return null;if(o&&typeof o=="object"&&"slots"in o&&o.slots){let r=n||Symbol("default");if(!o.slots[r]){let u=new Intl.ListFormat().format(Object.keys(o.slots).map(c=>`"${c}"`)),f=n?`Invalid slot name: "${n}". This slot is not recognized. Please refer to the component's documentation for valid slot names.`:"A slot prop is required. You must provide a valid slot name to render content in this area.";throw new Error(`${f} Valid slot names are ${u}.`)}return o.slots[r]}return o}var Ze=require("react");function ue(e={}){let{ref:t,context:n}=e;(typeof document<"u"?Ze.useLayoutEffect:()=>{})(()=>{if(n&&n.ref&&t)return n.ref.current=t.current,()=>{n.ref&&(n.ref.current=null)}})}var et=require("@necto-react/helpers"),z=require("react");function K(e){let{onBlur:t}=e,n=(0,z.useRef)({isFocused:!1,observer:null});(0,z.useLayoutEffect)(()=>{let r=n.current;return()=>{r.observer&&(r.observer.disconnect(),r.observer=null)}},[]);let o=q(r=>{t?.(r)});return(0,z.useCallback)(r=>{if(r.target instanceof HTMLButtonElement||r.target instanceof HTMLInputElement||r.target instanceof HTMLTextAreaElement||r.target instanceof HTMLSelectElement){n.current.isFocused=!0;let u=r.target,f=c=>{if(n.current.isFocused=!1,u.disabled){let i=(0,et.createSyntheticEvent)(c);o(i)}n.current.observer&&(n.current.observer.disconnect(),n.current.observer=null)};u.addEventListener("focusout",f,{once:!0}),n.current.observer=new MutationObserver(()=>{if(n.current.isFocused&&u.disabled){n.current.observer?.disconnect();let c=u===document.activeElement?null:document.activeElement;u.dispatchEvent(new FocusEvent("blur",{relatedTarget:c})),u.dispatchEvent(new FocusEvent("focusout",{bubbles:!0,relatedTarget:c}))}}),n.current.observer.observe(u,{attributes:!0,attributeFilter:["disabled"]})}},[o])}var V=require("react");function q(e){let t=(0,V.useRef)(e);return(typeof window<"u"?V.useLayoutEffect:V.useEffect)(()=>{t.current=e},[e]),(0,V.useCallback)((...n)=>t.current(...n),[])}var pe=require("react");function mt(e){let t=fe(),[n,o]=(0,pe.useState)(!1);return(0,pe.useEffect)(()=>{t()&&o(!!e())},[e,t]),n}0&&(module.exports={getInteractionModality,useContextProps,useDisabled,useDisabledProps,useEffectEvent,useElementVisibility,useFocus,useFocusRing,useFocusVisible,useFocusVisibleListener,useFocusWithin,useFocusable,useGlobalListeners,useHover,useId,useKeyboard,useMounted,usePress,useRenderer,useSlottedContext,useSupported,useSyncContextRef,useSyntheticBlurEvent});
|
|
1
|
+
"use strict";var Gt=Object.create;var he=Object.defineProperty;var $t=Object.getOwnPropertyDescriptor;var zt=Object.getOwnPropertyNames;var qt=Object.getPrototypeOf,Yt=Object.prototype.hasOwnProperty;var ke=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Xt=(t,e)=>{for(var r in e)he(t,r,{get:e[r],enumerable:!0})},Xe=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of zt(e))!Yt.call(t,i)&&i!==r&&he(t,i,{get:()=>e[i],enumerable:!(o=$t(e,i))||o.enumerable});return t};var Ie=(t,e,r)=>(r=t!=null?Gt(qt(t)):{},Xe(e||!t||!t.__esModule?he(r,"default",{value:t,enumerable:!0}):r,t)),Qt=t=>Xe(he({},"__esModule",{value:!0}),t);var Pt=ke(C=>{"use strict";var sr=require("react");function Mt(t){var e="https://react.dev/errors/"+t;if(1<arguments.length){e+="?args[]="+encodeURIComponent(arguments[1]);for(var r=2;r<arguments.length;r++)e+="&args[]="+encodeURIComponent(arguments[r])}return"Minified React error #"+t+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function J(){}var A={d:{f:J,r:function(){throw Error(Mt(522))},D:J,C:J,L:J,m:J,X:J,S:J,M:J},p:0,findDOMNode:null},ir=Symbol.for("react.portal");function ur(t,e,r){var o=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:ir,key:o==null?null:""+o,children:t,containerInfo:e,implementation:r}}var ge=sr.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function _e(t,e){if(t==="font")return"";if(typeof e=="string")return e==="use-credentials"?e:""}C.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=A;C.createPortal=function(t,e){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)throw Error(Mt(299));return ur(t,e,null,r)};C.flushSync=function(t){var e=ge.T,r=A.p;try{if(ge.T=null,A.p=2,t)return t()}finally{ge.T=e,A.p=r,A.d.f()}};C.preconnect=function(t,e){typeof t=="string"&&(e?(e=e.crossOrigin,e=typeof e=="string"?e==="use-credentials"?e:"":void 0):e=null,A.d.C(t,e))};C.prefetchDNS=function(t){typeof t=="string"&&A.d.D(t)};C.preinit=function(t,e){if(typeof t=="string"&&e&&typeof e.as=="string"){var r=e.as,o=_e(r,e.crossOrigin),i=typeof e.integrity=="string"?e.integrity:void 0,u=typeof e.fetchPriority=="string"?e.fetchPriority:void 0;r==="style"?A.d.S(t,typeof e.precedence=="string"?e.precedence:void 0,{crossOrigin:o,integrity:i,fetchPriority:u}):r==="script"&&A.d.X(t,{crossOrigin:o,integrity:i,fetchPriority:u,nonce:typeof e.nonce=="string"?e.nonce:void 0})}};C.preinitModule=function(t,e){if(typeof t=="string")if(typeof e=="object"&&e!==null){if(e.as==null||e.as==="script"){var r=_e(e.as,e.crossOrigin);A.d.M(t,{crossOrigin:r,integrity:typeof e.integrity=="string"?e.integrity:void 0,nonce:typeof e.nonce=="string"?e.nonce:void 0})}}else e==null&&A.d.M(t)};C.preload=function(t,e){if(typeof t=="string"&&typeof e=="object"&&e!==null&&typeof e.as=="string"){var r=e.as,o=_e(r,e.crossOrigin);A.d.L(t,r,{crossOrigin:o,integrity:typeof e.integrity=="string"?e.integrity:void 0,nonce:typeof e.nonce=="string"?e.nonce:void 0,type:typeof e.type=="string"?e.type:void 0,fetchPriority:typeof e.fetchPriority=="string"?e.fetchPriority:void 0,referrerPolicy:typeof e.referrerPolicy=="string"?e.referrerPolicy:void 0,imageSrcSet:typeof e.imageSrcSet=="string"?e.imageSrcSet:void 0,imageSizes:typeof e.imageSizes=="string"?e.imageSizes:void 0,media:typeof e.media=="string"?e.media:void 0})}};C.preloadModule=function(t,e){if(typeof t=="string")if(e){var r=_e(e.as,e.crossOrigin);A.d.m(t,{as:typeof e.as=="string"&&e.as!=="script"?e.as:void 0,crossOrigin:r,integrity:typeof e.integrity=="string"?e.integrity:void 0})}else A.d.m(t)};C.requestFormReset=function(t){A.d.r(t)};C.unstable_batchedUpdates=function(t,e){return t(e)};C.useFormState=function(t,e,r){return ge.H.useFormState(t,e,r)};C.useFormStatus=function(){return ge.H.useHostTransitionStatus()};C.version="19.2.0"});var Ut=ke(k=>{"use strict";process.env.NODE_ENV!=="production"&&(function(){function t(){}function e(s){return""+s}function r(s,n,p){var E=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;try{e(E);var g=!1}catch{g=!0}return g&&(console.error("The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",typeof Symbol=="function"&&Symbol.toStringTag&&E[Symbol.toStringTag]||E.constructor.name||"Object"),e(E)),{$$typeof:l,key:E==null?null:""+E,children:s,containerInfo:n,implementation:p}}function o(s,n){if(s==="font")return"";if(typeof n=="string")return n==="use-credentials"?n:""}function i(s){return s===null?"`null`":s===void 0?"`undefined`":s===""?"an empty string":'something with type "'+typeof s+'"'}function u(s){return s===null?"`null`":s===void 0?"`undefined`":s===""?"an empty string":typeof s=="string"?JSON.stringify(s):typeof s=="number"?"`"+s+"`":'something with type "'+typeof s+'"'}function f(){var s=v.H;return s===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
|
|
2
|
+
1. You might have mismatching versions of React and the renderer (such as React DOM)
|
|
3
|
+
2. You might be breaking the Rules of Hooks
|
|
4
|
+
3. You might have more than one copy of React in the same app
|
|
5
|
+
See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),s}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var c=require("react"),a={d:{f:t,r:function(){throw Error("Invalid form element. requestFormReset must be passed a form that was rendered by React.")},D:t,C:t,L:t,m:t,X:t,S:t,M:t},p:0,findDOMNode:null},l=Symbol.for("react.portal"),v=c.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;typeof Map=="function"&&Map.prototype!=null&&typeof Map.prototype.forEach=="function"&&typeof Set=="function"&&Set.prototype!=null&&typeof Set.prototype.clear=="function"&&typeof Set.prototype.forEach=="function"||console.error("React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),k.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,k.createPortal=function(s,n){var p=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!n||n.nodeType!==1&&n.nodeType!==9&&n.nodeType!==11)throw Error("Target container is not a DOM element.");return r(s,n,null,p)},k.flushSync=function(s){var n=v.T,p=a.p;try{if(v.T=null,a.p=2,s)return s()}finally{v.T=n,a.p=p,a.d.f()&&console.error("flushSync was called from inside a lifecycle method. React cannot flush when React is already rendering. Consider moving this call to a scheduler task or micro task.")}},k.preconnect=function(s,n){typeof s=="string"&&s?n!=null&&typeof n!="object"?console.error("ReactDOM.preconnect(): Expected the `options` argument (second) to be an object but encountered %s instead. The only supported option at this time is `crossOrigin` which accepts a string.",u(n)):n!=null&&typeof n.crossOrigin!="string"&&console.error("ReactDOM.preconnect(): Expected the `crossOrigin` option (second argument) to be a string but encountered %s instead. Try removing this option or passing a string value instead.",i(n.crossOrigin)):console.error("ReactDOM.preconnect(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",i(s)),typeof s=="string"&&(n?(n=n.crossOrigin,n=typeof n=="string"?n==="use-credentials"?n:"":void 0):n=null,a.d.C(s,n))},k.prefetchDNS=function(s){if(typeof s!="string"||!s)console.error("ReactDOM.prefetchDNS(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",i(s));else if(1<arguments.length){var n=arguments[1];typeof n=="object"&&n.hasOwnProperty("crossOrigin")?console.error("ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. It looks like the you are attempting to set a crossOrigin property for this DNS lookup hint. Browsers do not perform DNS queries using CORS and setting this attribute on the resource hint has no effect. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",u(n)):console.error("ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",u(n))}typeof s=="string"&&a.d.D(s)},k.preinit=function(s,n){if(typeof s=="string"&&s?n==null||typeof n!="object"?console.error("ReactDOM.preinit(): Expected the `options` argument (second) to be an object with an `as` property describing the type of resource to be preinitialized but encountered %s instead.",u(n)):n.as!=="style"&&n.as!=="script"&&console.error('ReactDOM.preinit(): Expected the `as` property in the `options` argument (second) to contain a valid value describing the type of resource to be preinitialized but encountered %s instead. Valid values for `as` are "style" and "script".',u(n.as)):console.error("ReactDOM.preinit(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",i(s)),typeof s=="string"&&n&&typeof n.as=="string"){var p=n.as,E=o(p,n.crossOrigin),g=typeof n.integrity=="string"?n.integrity:void 0,y=typeof n.fetchPriority=="string"?n.fetchPriority:void 0;p==="style"?a.d.S(s,typeof n.precedence=="string"?n.precedence:void 0,{crossOrigin:E,integrity:g,fetchPriority:y}):p==="script"&&a.d.X(s,{crossOrigin:E,integrity:g,fetchPriority:y,nonce:typeof n.nonce=="string"?n.nonce:void 0})}},k.preinitModule=function(s,n){var p="";if(typeof s=="string"&&s||(p+=" The `href` argument encountered was "+i(s)+"."),n!==void 0&&typeof n!="object"?p+=" The `options` argument encountered was "+i(n)+".":n&&"as"in n&&n.as!=="script"&&(p+=" The `as` option encountered was "+u(n.as)+"."),p)console.error("ReactDOM.preinitModule(): Expected up to two arguments, a non-empty `href` string and, optionally, an `options` object with a valid `as` property.%s",p);else switch(p=n&&typeof n.as=="string"?n.as:"script",p){case"script":break;default:p=u(p),console.error('ReactDOM.preinitModule(): Currently the only supported "as" type for this function is "script" but received "%s" instead. This warning was generated for `href` "%s". In the future other module types will be supported, aligning with the import-attributes proposal. Learn more here: (https://github.com/tc39/proposal-import-attributes)',p,s)}typeof s=="string"&&(typeof n=="object"&&n!==null?(n.as==null||n.as==="script")&&(p=o(n.as,n.crossOrigin),a.d.M(s,{crossOrigin:p,integrity:typeof n.integrity=="string"?n.integrity:void 0,nonce:typeof n.nonce=="string"?n.nonce:void 0})):n==null&&a.d.M(s))},k.preload=function(s,n){var p="";if(typeof s=="string"&&s||(p+=" The `href` argument encountered was "+i(s)+"."),n==null||typeof n!="object"?p+=" The `options` argument encountered was "+i(n)+".":typeof n.as=="string"&&n.as||(p+=" The `as` option encountered was "+i(n.as)+"."),p&&console.error('ReactDOM.preload(): Expected two arguments, a non-empty `href` string and an `options` object with an `as` property valid for a `<link rel="preload" as="..." />` tag.%s',p),typeof s=="string"&&typeof n=="object"&&n!==null&&typeof n.as=="string"){p=n.as;var E=o(p,n.crossOrigin);a.d.L(s,p,{crossOrigin:E,integrity:typeof n.integrity=="string"?n.integrity:void 0,nonce:typeof n.nonce=="string"?n.nonce:void 0,type:typeof n.type=="string"?n.type:void 0,fetchPriority:typeof n.fetchPriority=="string"?n.fetchPriority:void 0,referrerPolicy:typeof n.referrerPolicy=="string"?n.referrerPolicy:void 0,imageSrcSet:typeof n.imageSrcSet=="string"?n.imageSrcSet:void 0,imageSizes:typeof n.imageSizes=="string"?n.imageSizes:void 0,media:typeof n.media=="string"?n.media:void 0})}},k.preloadModule=function(s,n){var p="";typeof s=="string"&&s||(p+=" The `href` argument encountered was "+i(s)+"."),n!==void 0&&typeof n!="object"?p+=" The `options` argument encountered was "+i(n)+".":n&&"as"in n&&typeof n.as!="string"&&(p+=" The `as` option encountered was "+i(n.as)+"."),p&&console.error('ReactDOM.preloadModule(): Expected two arguments, a non-empty `href` string and, optionally, an `options` object with an `as` property valid for a `<link rel="modulepreload" as="..." />` tag.%s',p),typeof s=="string"&&(n?(p=o(n.as,n.crossOrigin),a.d.m(s,{as:typeof n.as=="string"&&n.as!=="script"?n.as:void 0,crossOrigin:p,integrity:typeof n.integrity=="string"?n.integrity:void 0})):a.d.m(s))},k.requestFormReset=function(s){a.d.r(s)},k.unstable_batchedUpdates=function(s,n){return s(n)},k.useFormState=function(s,n,p){return f().useFormState(s,n,p)},k.useFormStatus=function(){return f().useHostTransitionStatus()},k.version="19.2.0",typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()});var Dt=ke((Xn,$e)=>{"use strict";function Kt(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function")){if(process.env.NODE_ENV!=="production")throw new Error("^_^");try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Kt)}catch(t){console.error(t)}}}process.env.NODE_ENV==="production"?(Kt(),$e.exports=Pt()):$e.exports=Ut()});var fr={};Xt(fr,{DEFAULT_VALIDATION_RESULT:()=>te,FormValidationContext:()=>Ye,VALID_VALIDITY_STATE:()=>ve,getInteractionModality:()=>ie,mergeValidation:()=>Wt,privateValidationStateProp:()=>Ae,useAnimation:()=>At,useAriaProps:()=>St,useCollectionNavigation:()=>Ht,useContextProps:()=>Je,useEffectEvent:()=>$,useElementVisibility:()=>Ze,useFocus:()=>oe,useFocusRing:()=>rt,useFocusVisible:()=>ot,useFocusVisibleListener:()=>ue,useFocusWithin:()=>xe,useFocusable:()=>tt,useFormState:()=>jt,useGlobalListeners:()=>le,useHover:()=>yt,useId:()=>gt,useIsomorphicInsertionEffect:()=>Ge,useKeyboard:()=>Fe,useLatestRef:()=>nr,useLongPress:()=>wt,useMounted:()=>Pe,usePress:()=>vt,useRenderer:()=>bt,useScrollLock:()=>Rt,useSlottedContext:()=>Re,useStyleInjection:()=>xt,useSupported:()=>rr,useSyntheticBlurEvent:()=>se});module.exports=Qt(fr);var Te=require("react"),Qe=require("@necto/mergers");function Je({props:t,ref:e,context:r}){let o=Re({context:r,slot:t.slot})||{},{ref:i=null,...u}=o,f=(0,Te.useRef)(null),c=(0,Te.useCallback)(l=>{f.current=l,typeof e=="function"?e(l):e&&(e.current=l),typeof i=="function"?i(l):i&&typeof i=="object"&&(i.current=l)},[e,i]),a=(0,Qe.mergeProps)(u,t);return"style"in u&&u.style&&"style"in t&&t.style&&(typeof u.style=="function"||typeof t.style=="function"?a.style=l=>{let v=typeof u.style=="function"?u.style(l):u.style,s={...l.defaultStyle,...v},n=typeof t.style=="function"?t.style({...l,defaultStyle:s}):t.style;return{...s,...n}}:a.style={...u.style,...t.style}),[a,c]}var j=require("react");function Ze(t={}){let{partialVisibility:e=!1,threshold:r=0,rootMargin:o="0px",root:i=null,active:u=!0,once:f=!1,onChange:c}=t,[a,l]=(0,j.useState)(null),[v,s]=(0,j.useState)(!1),[n,p]=(0,j.useState)(null),E=(0,j.useRef)(!1),g=(0,j.useRef)(null),y=$(h=>{let T=h[0],L=T.isIntersecting,S={isIntersecting:T.isIntersecting,intersectionRatio:T.intersectionRatio,intersectionRect:T.intersectionRect,boundingClientRect:T.boundingClientRect,rootBounds:T.rootBounds,time:T.time};p(S),s(K=>f&&E.current?!0:L&&f?(E.current=!0,K!==!0&&c&&c(!0),!0):K!==L?(c&&c(L),L):K)}),O=(0,j.useCallback)(h=>{l(h)},[]);return(0,j.useEffect)(()=>{if(!u||!a)return;let h;return e===!0?h=[0,.1,.25,.5,.75,1]:typeof e=="string"?h=.01:h=r,g.current=new IntersectionObserver(y,{root:i,rootMargin:o,threshold:h}),g.current.observe(a),()=>{g.current&&g.current.disconnect()}},[u,a,i,o,r,e]),[O,v,n]}var Oe=require("react");var Z=require("@necto/dom");function oe(t={}){let{isDisabled:e,onFocus:r,onBlur:o,onFocusChange:i}=t,u=(0,Oe.useCallback)((l,v)=>{l?(r?.(v),i?.(!0)):(o?.(v),i?.(!1))},[r,o,i]),f=(0,Oe.useCallback)(l=>{l.target===l.currentTarget&&u(!1,l)},[u]),c=se({onBlur:f}),a=(0,Oe.useCallback)(l=>{let v=(0,Z.getOwnerDocument)(l.target),s=v?(0,Z.getActiveElement)(v):(0,Z.getActiveElement)();l.target===l.currentTarget&&s===(0,Z.getEventTarget)(l.nativeEvent)&&(u(!0,l),c(l))},[u,c]);return{focusProps:{...e?{}:{onFocus:a,onBlur:f}}}}var W=require("@necto/dom"),et=require("@necto/mergers"),Se=require("react");function tt(t,e){let{autoFocus:r,isDisabled:o,excludeFromTabOrder:i}=t,{focusProps:u}=oe(t),{keyboardProps:f}=Fe(t),c=(0,Se.useRef)(r),a=(0,W.getOwnerDocument)(e.current),l=(0,W.getActiveElement)(a);(0,Se.useEffect)(()=>{if(c.current&&e.current)if(ie()==="virtual"){let s=l;(0,W.runAfterTransition)(()=>{(0,W.getActiveElement)(a)===s&&e.current?.isConnected&&(0,W.focusWithoutScrolling)(e.current)})}else(0,W.focusWithoutScrolling)(e.current);c.current=!1},[e]);let v=i?-1:0;return o&&(v=void 0),{focusableProps:(0,et.mergeProps)(u??{},f,{tabIndex:v})}}var z=require("react");var Jt=null;function rt(t={}){let{within:e=!1,isTextInput:r=!1,autoFocus:o=!1}=t,i=(0,z.useRef)({isFocused:o,isFocusVisible:o||Jt!=="pointer"}),[u,f]=(0,z.useState)(o),[c,a]=(0,z.useState)(()=>i.current.isFocused&&i.current.isFocusVisible),l=(0,z.useCallback)(()=>{a(i.current.isFocused&&i.current.isFocusVisible)},[]),v=(0,z.useCallback)(p=>{i.current.isFocused=p,f(p),l()},[l]);ue({fn:p=>{i.current.isFocusVisible=p,l()},deps:[],opts:{isTextInput:r}});let{focusProps:s={}}=oe({isDisabled:e,onFocusChange:v})||{},{focusWithinProps:n={}}=xe({isDisabled:!e,onFocusWithinChange:v})||{};return{isFocused:u,isFocusVisible:c,focusProps:e?n:s}}var nt=require("react");function ot(t={}){let{isTextInput:e,autoFocus:r}=t,[o,i]=(0,nt.useState)(r||ie()!=="pointer");return ue({fn:u=>i(u),deps:[e],opts:{isTextInput:e}}),{isFocusVisible:o}}var ae=new Map,Le=new Set,st=!1,He=null,it=!1,D={get hasEventBeforeFocus(){return st},set hasEventBeforeFocus(t){st=t},get hasBlurredWindowRecently(){return it},set hasBlurredWindowRecently(t){it=t},get currentModality(){return He},set currentModality(t){He=t}};function ie(){return He}var ut=require("std-env"),at=require("react"),ct=require("@necto-react/helpers"),ce=require("@necto/dom");function Be(t,e){Le.forEach(r=>r(t,e))}function Zt(t){return!(t.metaKey||ut.isMacOS&&t.altKey||t.ctrlKey||["Control","Shift","Meta"].includes(t.key))}function lt(t){Zt(t)&&(D.hasEventBeforeFocus=!0,D.currentModality="keyboard",Be("keyboard",t))}function Ne(t){["mousedown","pointerdown"].includes(t.type)&&(D.hasEventBeforeFocus=!0,D.currentModality="pointer",Be("pointer",t))}function ft(t){[window,document].includes(t.target)||!t.isTrusted||!D.hasEventBeforeFocus&&!D.hasBlurredWindowRecently||(!D.hasEventBeforeFocus&&!D.hasBlurredWindowRecently&&(D.currentModality="virtual",Be("virtual",t)),D.hasEventBeforeFocus=!1,D.hasBlurredWindowRecently=!1)}function dt(){D.hasEventBeforeFocus=!1,D.hasBlurredWindowRecently=!0}function er(t){let e=(0,ce.getOwnerWindow)(t),r=(0,ce.getOwnerDocument)(t);if(typeof window>"u"||typeof document>"u"||ae.has(e))return;let o=e.HTMLElement.prototype.focus;e.HTMLElement.prototype.focus=function(...i){D.hasEventBeforeFocus=!0,o.apply(this,i)},r.addEventListener("keydown",lt,!0),r.addEventListener("click",Ne,!0),e.addEventListener("focus",ft,!0),e.addEventListener("blur",dt,!1),typeof PointerEvent<"u"&&r.addEventListener("pointerdown",Ne,!0),ae.set(e,{focus:o})}function tr(t){let e=(0,ce.getOwnerWindow)(t),r=(0,ce.getOwnerDocument)(t);if(!ae.has(e))return;let{focus:o}=ae.get(e);e.HTMLElement.prototype.focus=o,r.removeEventListener("keydown",lt,!0),r.removeEventListener("click",Ne,!0),e.removeEventListener("focus",ft,!0),e.removeEventListener("blur",dt,!1),ae.delete(e)}function ue(t){let{fn:e,deps:r,opts:o}=t;typeof window>"u"||typeof document>"u"||(er(),(0,at.useEffect)(()=>{let i=(u,f)=>{(0,ct.isKeyboardFocusEvent)(!!o?.isTextInput,u,f)&&e(D.currentModality!=="pointer")};return Le.add(i),()=>{Le.delete(i),tr()}},r))}var pe=require("react"),pt=require("@necto-react/helpers");var q=require("@necto/dom");function xe(t){let{isDisabled:e,onFocusWithin:r,onBlurWithin:o,onFocusWithinChange:i}=t,u=(0,pe.useRef)({isFocusWithin:!1}),{addGlobalListener:f,removeAllGlobalListeners:c}=le(),a=(0,pe.useCallback)(s=>{s.currentTarget.contains(s.target)&&u.current.isFocusWithin&&!s.currentTarget.contains(s.relatedTarget)&&(u.current.isFocusWithin=!1,c(),o&&o(s),i&&i(!1))},[o,i,c]),l=se({onBlur:a}),v=(0,pe.useCallback)(s=>{if(!s.currentTarget.contains(s.target))return;let n=(0,q.getOwnerDocument)(s.target),p=(0,q.getActiveElement)(n);if(!u.current.isFocusWithin&&p===(0,q.getEventTarget)(s.nativeEvent)){r&&r(s),i&&i(!0),u.current.isFocusWithin=!0,l(s);let E=s.currentTarget;f(n,"focus",g=>{if(u.current.isFocusWithin&&!(0,q.nodeContains)(E,g.target)&&n.defaultView&&typeof n.defaultView.FocusEvent=="function"){let y=new n.defaultView.FocusEvent("blur",{relatedTarget:g.target});Object.defineProperty(y,"target",{value:E}),Object.defineProperty(y,"currentTarget",{value:E});let O=(0,pt.createSyntheticEvent)(y);a(O)}},{capture:!0})}},[r,i,l,f,a]);return e?{focusWithinProps:{onFocus:void 0,onBlur:void 0}}:{focusWithinProps:{onFocus:v,onBlur:a}}}var Y=require("react");function le(){let t=(0,Y.useRef)(new Map),e=(0,Y.useCallback)((i,u,f,c)=>{let a=typeof c=="object"&&c?.once?(...l)=>{t.current.delete(f),f(...l)}:f;t.current.set(f,{type:u,eventTarget:i,options:c}),i.addEventListener(u,a,c)},[]),r=(0,Y.useCallback)((i,u,f,c)=>{let a=t.current.get(f),l=a?.options?.once?a.fn:f;i.removeEventListener(u,l,c),t.current.delete(f)},[]),o=(0,Y.useCallback)(()=>{t.current.forEach((i,u)=>{i.eventTarget.removeEventListener(i.type,u,i.options)}),t.current.clear()},[]);return(0,Y.useEffect)(()=>()=>o(),[o]),{addGlobalListener:e,removeGlobalListener:r,removeAllGlobalListeners:o}}var we=require("std-env");var Me=require("@necto/dom"),H=require("react");function yt(t={}){let{onHoverStart:e,onHoverChange:r,onHoverEnd:o,isDisabled:i}=t,[u,f]=(0,H.useState)(!1),c=(0,H.useRef)({hoverCount:0,ignoreEmulated:!1}),a=(0,H.useRef)({isHovered:!1,ignoreEmulatedMouseEvents:!1,pointerType:"",target:null}).current,{addGlobalListener:l,removeAllGlobalListeners:v}=le(),s=(0,H.useCallback)(()=>{c.current.ignoreEmulated=!0,setTimeout(()=>{c.current.ignoreEmulated=!1},50)},[]);(0,H.useEffect)(()=>{let g=O=>{O.pointerType==="touch"&&s()};if(typeof document>"u")return;let y=c.current;return y.hoverCount++,typeof PointerEvent<"u"?document.addEventListener("pointerup",g):we.isTest&&document.addEventListener("touchend",s),()=>{y.hoverCount--,y.hoverCount===0&&(typeof PointerEvent<"u"?document.removeEventListener("pointerup",g):we.isTest&&document.removeEventListener("touchend",s))}},[s]);let n=(0,H.useCallback)((g,y)=>{i||y==="touch"||a.isHovered||!(g.currentTarget&&g.currentTarget.contains(g.target))||(a.isHovered=!0,a.pointerType=y,a.target=g.currentTarget,l((0,Me.getOwnerDocument)(g.target instanceof Element?g.target:null),"pointerover",O=>{a.isHovered&&a.target&&!(0,Me.nodeContains)(a.target,O.target)&&p(O,O.pointerType)},{capture:!0}),e?.({type:"hoverstart",target:g.currentTarget,pointerType:y}),r?.(!0),f(!0))},[i,e,r,l,a]),p=(0,H.useCallback)((g,y)=>{y==="touch"||!a.isHovered||!a.target||(a.isHovered=!1,a.pointerType="",a.target=null,v(),o?.({type:"hoverend",target:g.currentTarget,pointerType:y}),r?.(!1),f(!1))},[o,r,v,a.target,a]),E=(0,H.useMemo)(()=>{let g={};return typeof PointerEvent<"u"?(g.onPointerEnter=y=>{c.current.ignoreEmulated&&y.pointerType==="mouse"||n(y,y.pointerType)},g.onPointerLeave=y=>{!i&&y.currentTarget instanceof Element&&y.currentTarget.contains(y.target)&&p(y,y.pointerType)}):we.isTest&&(g.onTouchStart=()=>{a.ignoreEmulatedMouseEvents=!0},g.onMouseEnter=y=>{!a.ignoreEmulatedMouseEvents&&!c.current.ignoreEmulated&&n(y.nativeEvent,"mouse"),a.ignoreEmulatedMouseEvents=!1},g.onMouseLeave=y=>{!i&&y.currentTarget.contains(y.target)&&p(y.nativeEvent,"mouse")}),g},[i,n,p,a]);return(0,H.useEffect)(()=>{i&&a.isHovered&&p({currentTarget:a.target},a.pointerType)},[i,p,a.isHovered,a.pointerType,a.target]),{hoverProps:E,isHovered:u}}var mt=require("std-env");var je={prefix:String(Math.round(Math.random()*1e10)),current:0},ye=new Map,me=typeof FinalizationRegistry<"u"?new FinalizationRegistry(t=>{ye.delete(t)}):null;var B=Ie(require("react"),1);function gt(t={}){let{prefix:e="necto",defaultId:r}=t,[o,i]=(0,B.useState)(()=>r),u=(0,B.useRef)(null),f=(0,B.useRef)({}),c=(()=>{if(r)return r;let a=typeof B.default.useId=="function"?(0,B.useId)():String(++je.current);return`${mt.isTest?e:`${e}${je.prefix}`}-${a}`})();return(0,B.useEffect)(()=>{if(typeof window<"u"&&window.document?.createElement){let a=ye.get(c)||[],l={current:u.current};a.some(v=>v===l)||ye.set(c,[...a,l])}return me&&me.register(f.current,c),()=>{me&&me.unregister(f.current),ye.delete(c)}},[c]),(0,B.useEffect)(()=>{let a=u.current;a&&(i(a),u.current=null)},[]),c}var We=require("@necto-react/helpers");function Fe(t){return{keyboardProps:t.isDisabled?{}:{onKeyDown:t.onKeyDown?(0,We.createEventHandler)(e=>t.onKeyDown?.(e.nativeEvent)):void 0,onKeyUp:t.onKeyUp?(0,We.createEventHandler)(e=>t.onKeyUp?.(e.nativeEvent)):void 0}}}var X=require("react");function Pe(t={}){let{type:e="function"}=t,r=(0,X.useRef)(!1),[o,i]=(0,X.useState)(!1),u=(0,X.useCallback)(()=>r.current,[]);return(0,X.useEffect)(()=>(r.current=!0,i(!0),()=>{r.current=!1,i(!1)}),[]),e==="ref"?r:e==="boolean"?o:u}var V=require("@necto/dom"),F=require("react");function _(t,e,r){return{type:t,pointerType:e,target:r.currentTarget??r.target,shiftKey:r.shiftKey,ctrlKey:r.ctrlKey,metaKey:r.metaKey,altKey:r.altKey}}function vt(t={}){let{isDisabled:e,preventFocusOnPress:r,allowTextSelectionOnPress:o,ref:i,onPress:u,onPressStart:f,onPressEnd:c,onPressChange:a,onPressUp:l,onClick:v}=t,[s,n]=(0,F.useState)(!1),p=(0,F.useRef)(!1),E=(0,F.useRef)(null),g=(0,F.useRef)(!1),y=(0,F.useCallback)(m=>{s!==m&&(n(m),a?.(m))},[s,a]),O=(0,F.useCallback)(m=>{if(!g.current)return;let d=E.current&&E.current instanceof Node&&m.target instanceof Node&&E.current.contains(m.target);if(g.current=!1,y(!1),!o&&E.current instanceof HTMLElement&&(0,V.restoreTextSelection)(E.current),m.target){let R={..._("pressend","mouse",m),target:m.target};c?.(R),l?.(R),d&&u?.(R)}},[c,l,u,y,o]),h=(0,F.useCallback)(m=>{if(e||m.button!==0||p.current)return;r&&m.preventDefault(),o||(0,V.disableTextSelection)(m.currentTarget),g.current=!0,E.current=m.currentTarget,y(!0);let d=_("pressstart","mouse",m);f?.(d),window.addEventListener("mouseup",O,{once:!0})},[e,r,o,f,y,O]),T=(0,F.useCallback)(m=>{if(e||m.button!==0||!g.current)return;g.current=!1,y(!1),!o&&m.currentTarget instanceof HTMLElement&&(0,V.restoreTextSelection)(m.currentTarget);let d=_("pressend","mouse",m);c?.(d),l?.(d),m.currentTarget instanceof Node&&m.currentTarget.contains(m.target)&&u?.(_("press","mouse",m))},[e,u,c,l,y,o]),L=(0,F.useCallback)(m=>{s&&(y(!1),c?.(_("pressend","mouse",m)),!o&&m.currentTarget instanceof HTMLElement&&(0,V.restoreTextSelection)(m.currentTarget))},[s,y,c,o]),S=(0,F.useCallback)(m=>{g.current&&!s&&(y(!0),f?.(_("pressstart","mouse",m)))},[s,f,y]),K=(0,F.useCallback)(m=>{if(!g.current)return;g.current=!1,y(!1),!o&&E.current instanceof HTMLElement&&(0,V.restoreTextSelection)(E.current);let d={..._("pressend","touch",m),target:m.target};c?.(d),l?.(d)},[c,l,y,o]),U=(0,F.useCallback)(m=>{if(!g.current)return;g.current=!1,y(!1),!o&&E.current instanceof HTMLElement&&(0,V.restoreTextSelection)(E.current);let d={..._("pressend","touch",m),target:m.target};c?.(d)},[c,y,o]),I=(0,F.useCallback)(m=>{e||(o||(0,V.disableTextSelection)(m.currentTarget),p.current=!0,setTimeout(()=>{p.current=!1},100),g.current=!0,E.current=m.currentTarget,y(!0),f?.(_("pressstart","touch",m)),window.addEventListener("touchend",K,{once:!0}),window.addEventListener("touchcancel",U,{once:!0}))},[e,f,y,o,K,U]),re=(0,F.useCallback)(m=>{if(e||!g.current)return;g.current=!1,y(!1),!o&&m.currentTarget instanceof HTMLElement&&(0,V.restoreTextSelection)(m.currentTarget);let d=_("pressend","touch",m);c?.(d),l?.(d),m.currentTarget instanceof Node&&m.currentTarget.contains(m.target)&&u?.(_("press","touch",m))},[e,u,c,l,y,o]),w=(0,F.useCallback)(m=>{if(e)return;(m.key==="Enter"||m.key===" ")&&!s&&(m.key===" "&&m.preventDefault(),o||(0,V.disableTextSelection)(),y(!0),g.current=!0,f?.(_("pressstart","keyboard",m)))},[e,s,f,y,o]),Ee=(0,F.useCallback)(m=>{if(e)return;if((m.key==="Enter"||m.key===" ")&&s){y(!1),g.current=!1,o||(0,V.restoreTextSelection)();let R=_("pressend","keyboard",m);c?.(R),l?.(_("pressup","keyboard",m)),u?.(_("press","keyboard",m))}},[e,s,u,c,l,y,o]),be=(0,F.useCallback)(m=>{if(e){m.preventDefault();return}p.current||v?.(m)},[e,v]);(0,F.useEffect)(()=>()=>{window.removeEventListener("mouseup",O),window.removeEventListener("touchend",K),window.removeEventListener("touchcancel",U)},[O,K,U]);let Ce=(0,F.useMemo)(()=>({onMouseDown:h,onMouseUp:T,onMouseLeave:L,onMouseEnter:S,onTouchStart:I,onTouchEnd:re,onKeyDown:w,onKeyUp:Ee,onClick:be}),[h,T,L,S,I,re,w,Ee,be]);return(0,F.useEffect)(()=>{let m=i?.current;m&&m instanceof(0,V.getOwnerWindow)(m).Element&&(0,V.getOwnerWindow)(m).getComputedStyle(m).touchAction==="auto"&&(m.style.touchAction="pan-x pan-y pinch-zoom")},[i]),{pressProps:Ce,isPressed:s}}var Et=require("react");function bt(t){let{style:e,values:r,children:o,className:i,defaultStyle:u,defaultChildren:f,defaultClassName:c="necto"}=t;return(0,Et.useMemo)(()=>{let a=typeof i=="function"?i({...r,defaultClassName:c}):i?`${c} ${i}`:c,l=typeof e=="function"?e({...r,defaultStyle:u||{}}):{...u,...e},v=typeof o=="function"?o({...r,defaultChildren:f}):o??f;return{className:a,style:l,children:v}},[i,e,o,c,f,u,r])}var ht=require("react");function Re(t){let{context:e,slot:r}=t,o=(0,ht.useContext)(e);if(r===null)return null;if(o&&typeof o=="object"&&"slots"in o&&o.slots){let i=r||Symbol("default");if(!o.slots[i]){let u=new Intl.ListFormat().format(Object.keys(o.slots).map(c=>`"${c}"`)),f=r?`Invalid slot name: "${r}". This slot is not recognized. Please refer to the component's documentation for valid slot names.`:"A slot prop is required. You must provide a valid slot name to render content in this area.";throw new Error(`${f} Valid slot names are ${u}.`)}return o.slots[i]}return o}var Tt=require("@necto-react/helpers"),fe=require("react");function se(t){let{onBlur:e}=t,r=(0,fe.useRef)({isFocused:!1,observer:null});(0,fe.useLayoutEffect)(()=>{let i=r.current;return()=>{i.observer&&(i.observer.disconnect(),i.observer=null)}},[]);let o=$(i=>{e?.(i)});return(0,fe.useCallback)(i=>{if(i.target instanceof HTMLButtonElement||i.target instanceof HTMLInputElement||i.target instanceof HTMLTextAreaElement||i.target instanceof HTMLSelectElement){r.current.isFocused=!0;let u=i.target,f=c=>{if(r.current.isFocused=!1,u.disabled){let a=(0,Tt.createSyntheticEvent)(c);o(a)}r.current.observer&&(r.current.observer.disconnect(),r.current.observer=null)};u.addEventListener("focusout",f,{once:!0}),r.current.observer=new MutationObserver(()=>{if(r.current.isFocused&&u.disabled){r.current.observer?.disconnect();let c=u===document.activeElement?null:document.activeElement;u.dispatchEvent(new FocusEvent("blur",{relatedTarget:c})),u.dispatchEvent(new FocusEvent("focusout",{bubbles:!0,relatedTarget:c}))}}),r.current.observer.observe(u,{attributes:!0,attributeFilter:["disabled"]})}},[o])}var Q=require("react");function $(t){let e=(0,Q.useRef)(t);return(typeof window<"u"?Q.useLayoutEffect:Q.useEffect)(()=>{e.current=t},[t]),(0,Q.useCallback)(((...r)=>e.current(...r)),[])}var Ue=require("react");function rr(t){let e=Pe(),[r,o]=(0,Ue.useState)(!1);return(0,Ue.useEffect)(()=>{e()&&o(!!t())},[t,e]),r}var ee=require("react");function Rt(t={}){let{autoLock:e=!1,target:r,widthReflow:o=!0}=t,[i,u]=(0,ee.useState)(!1),f=(0,ee.useRef)(null),c=(0,ee.useRef)(null),a=$(()=>{if(typeof window>"u"||!f.current)return;let{overflow:v,paddingRight:s}=f.current.style;if(c.current={overflow:v,paddingRight:s},o){let n=f.current===document.body?window.innerWidth:f.current.offsetWidth,p=parseInt(window.getComputedStyle(f.current).paddingRight,10)||0,E=n-f.current.scrollWidth;f.current.style.paddingRight=`${E+p}px`}f.current.style.overflow="hidden",u(!0)}),l=$(()=>{f.current&&c.current&&(f.current.style.overflow=c.current.overflow,o&&(f.current.style.paddingRight=c.current.paddingRight)),u(!1)});return(0,ee.useEffect)(()=>{if(!(typeof window>"u"||typeof document>"u"))return r&&(f.current=typeof r=="string"?document.querySelector(r):r),f.current||(f.current=document.body),e&&a(),()=>{l()}},[e,r,o,a,l]),{isLocked:i,lock:a,unlock:l}}var Ot=require("react"),x=require("@necto/dom");function St(t={}){let{isInvalid:e,isDisabled:r,isReadOnly:o,isRequired:i,isBusy:u,isPressed:f,isExpanded:c,isSelected:a,isChecked:l,isHidden:v,hasPopup:s,valueCurrent:n,valueMin:p,valueMax:E,valueText:g,label:y,labelledBy:O,describedBy:h,controls:T,owns:L}=t;return(0,Ot.useMemo)(()=>{let S={},K=[{value:e,attr:x.AriaProps.Invalid},{value:r,attr:x.AriaProps.Disabled},{value:o,attr:x.AriaProps.Readonly},{value:i,attr:x.AriaProps.Required},{value:u,attr:x.AriaProps.Busy},{value:c,attr:x.AriaProps.Expanded},{value:a,attr:x.AriaProps.Selected},{value:v,attr:x.AriaProps.Hidden}];for(let{value:U,attr:I}of K)U!==void 0&&(S[I]=U||void 0);return f!==void 0&&(S[x.AriaProps.Pressed]=f===!1?void 0:f),l!==void 0&&(S[x.AriaProps.Checked]=l===!1?void 0:l),s!==void 0&&(S[x.AriaProps.Haspopup]=s===!1?void 0:s),n!==void 0&&(S[x.AriaProps.Valuenow]=n),p!==void 0&&(S[x.AriaProps.Valuemin]=p),E!==void 0&&(S[x.AriaProps.Valuemax]=E),g!==void 0&&(S[x.AriaProps.Valuetext]=g),y!==void 0&&(S[x.AriaProps.Label]=y),O!==void 0&&(S[x.AriaProps.Labelledby]=O),h!==void 0&&(S[x.AriaProps.Describedby]=h),T!==void 0&&(S[x.AriaProps.Controls]=T),L!==void 0&&(S[x.AriaProps.Owns]=L),S},[e,r,o,i,u,f,c,a,l,v,s,n,p,E,g,y,O,h,T,L])}var Ft=require("@necto/dom");function xt({id:t,css:e,insertionPoint:r,enabled:o=!0,window:i=typeof window<"u"?window:null}){let u=Array.isArray(e)?e.join(`
|
|
6
|
+
`):e;Ge(()=>{if(!(!o||!u))return(0,Ft.injectStyle)(u,{id:t,window:i,insertionPoint:r})},[t,u,i,r,o])}var Ke=require("react");function nr(t){let e=(0,Ke.useRef)(t);return(0,Ke.useLayoutEffect)(()=>{e.current=t}),e}var De=Ie(require("react"),1),Ge=De.default.useInsertionEffect??De.useLayoutEffect;var Lt=require("defu"),N=require("react");function wt(t={}){let{isDisabled:e,onLongPressStart:r,onLongPressEnd:o,onLongPress:i,accessibilityDescription:u,threshold:f}=(0,Lt.defu)(t,{threshold:500}),c=(0,N.useRef)(null),a=(0,N.useRef)(null),l=(0,N.useRef)(null),v=(0,N.useRef)(!1),s=(0,N.useCallback)(()=>{c.current&&(clearTimeout(c.current),c.current=null)},[]);(0,N.useEffect)(()=>s,[s]);let n=(0,N.useCallback)(T=>({type:T,pointerType:a.current??"mouse",target:l.current}),[]),p=(0,N.useCallback)(T=>{e||T.button!==0||T.pointerType!=="mouse"&&(a.current=T.pointerType,l.current=T.currentTarget,v.current=!1,r?.(n("longpressstart")),c.current=setTimeout(()=>{v.current=!0,T.currentTarget?.dispatchEvent(new PointerEvent("pointercancel",{bubbles:!0})),i?.(n("longpress")),c.current=null},f))},[e,f,r,i,n]),E=(0,N.useCallback)(()=>{a.current!==null&&(s(),!v.current&&o&&o(n("longpressend")),a.current=null,l.current=null)},[s,o,n]),g=(0,N.useCallback)(()=>{s(),a.current!==null&&o&&o(n("longpressend")),a.current=null,l.current=null},[s,o,n]),y=(0,N.useCallback)(T=>{v.current&&T.preventDefault()},[]);return{longPressProps:e?{}:{onPointerDown:p,onPointerUp:E,onPointerCancel:g,onContextMenu:y,...!e&&!!i&&!!u&&{"aria-description":u}}}}var Vt=Ie(Dt(),1),G=require("react");function At(t){let{ref:e,isOpen:r,isReady:o=!0}=t,[i,u]=(0,G.useState)(r),f=i&&o;(0,G.useLayoutEffect)(()=>{if(f&&e.current&&"getAnimations"in e.current)for(let n of e.current.getAnimations())n instanceof CSSTransition&&n.cancel()},[e,f]),_t(e,f,(0,G.useCallback)(()=>u(!1),[]));let[c,a]=(0,G.useState)(r);r&&!c?(u(!0),a(!0)):!r&&c&&a(!1);let[l,v]=(0,G.useState)(r?"open":"closed");switch(l){case"open":r||v("exiting");break;case"closed":case"exiting":r&&v("open");break}let s=l==="exiting";return _t(e,s,(0,G.useCallback)(()=>{v(n=>n==="exiting"?"closed":n)},[])),{isEntering:f,isExiting:s,isRendered:r||s}}function _t(t,e,r){(0,G.useLayoutEffect)(()=>{if(e&&t.current){if(!("getAnimations"in t.current)){r();return}let o=t.current.getAnimations();if(o.length===0){r();return}let i=!1;return Promise.all(o.map(u=>u.finished)).then(()=>{i||(0,Vt.flushSync)(()=>{r()})}).catch(()=>{}),()=>{i=!0}}},[t,e,r])}var kt=require("defu"),It=require("@necto/mergers"),M=require("react"),de=require("@necto/platform"),Ve=require("@necto/dom");function ar(t){return(0,de.isMac)()?t.metaKey:t.ctrlKey}function Ct(t,e){return t.current?.querySelector(`[data-key="${e}"]`)??null}function Ht(t){let{selectionManager:e,keyboardDelegate:r,ref:o,autoFocus:i,shouldFocusWrap:u,disallowEmptySelection:f,disallowSelectAll:c,escapeBehavior:a,selectOnFocus:l,disallowTypeAhead:v,shouldUseVirtualFocus:s,allowsTabNavigation:n,scrollRef:p,direction:E,orientation:g,onNavigate:y,onFocusItem:O}=(0,kt.defu)(t,{autoFocus:!1,shouldFocusWrap:!1,disallowEmptySelection:!1,disallowSelectAll:!1,escapeBehavior:"clearSelection",selectOnFocus:!1,disallowTypeAhead:!1,shouldUseVirtualFocus:!1,allowsTabNavigation:!1,isVirtualized:!1,direction:"ltr",orientation:"vertical"}),h=p??o,T=(0,M.useRef)({top:0,left:0}),L=(0,M.useRef)(e.focusedKey),S=(0,M.useRef)(i),K=(0,M.useRef)(""),U=(0,M.useRef)(null),I=(0,M.useCallback)((d,R,b)=>{d!=null&&(e.setFocusedKey(d,b),y?.(d),R?.shiftKey&&e.selectionMode==="multiple"?e.extendSelection(d):l&&!ar(R)&&e.replaceSelection(d))},[e,l,y]),re=(0,M.useCallback)(d=>{if(O){O(d);return}let R=Ct(o,d);R&&!s&&(0,Ve.focusWithoutScrolling)(R)},[o,s,O]),w=(0,M.useCallback)(d=>{if(!v&&d.key.length===1&&!d.ctrlKey&&!d.metaKey&&!d.altKey){U.current&&clearTimeout(U.current),K.current+=d.key;let b=r.getKeyForSearch?.(K.current,e.focusedKey)??null;b!=null&&(d.preventDefault(),I(b,d)),U.current=setTimeout(()=>{K.current=""},500);return}let R=E==="rtl";switch(d.key){case"ArrowDown":{if(r.getKeyBelow){let b=e.focusedKey!=null?r.getKeyBelow(e.focusedKey):r.getFirstKey?.()??null;b==null&&u&&(b=r.getFirstKey?.()??null),b!=null&&(d.preventDefault(),I(b,d))}break}case"ArrowUp":{if(r.getKeyAbove){let b=e.focusedKey!=null?r.getKeyAbove(e.focusedKey):r.getLastKey?.()??null;b==null&&u&&(b=r.getLastKey?.()??null),b!=null&&(d.preventDefault(),I(b,d))}break}case"ArrowLeft":{if(r.getKeyLeftOf){let b=e.focusedKey!=null?r.getKeyLeftOf(e.focusedKey):null;b==null&&u&&(b=R?r.getFirstKey?.()??null:r.getLastKey?.()??null),b!=null&&(d.preventDefault(),I(b,d,R?"first":"last"))}break}case"ArrowRight":{if(r.getKeyRightOf){let b=e.focusedKey!=null?r.getKeyRightOf(e.focusedKey):null;b==null&&u&&(b=R?r.getLastKey?.()??null:r.getFirstKey?.()??null),b!=null&&(d.preventDefault(),I(b,d,R?"last":"first"))}break}case"Home":{if(r.getFirstKey){d.preventDefault();let b=r.getFirstKey();e.setFocusedKey(b),b!=null&&((0,de.isCtrlKeyPressed)(d)&&d.shiftKey&&e.selectionMode==="multiple"?e.extendSelection(b):l&&e.replaceSelection(b))}break}case"End":{if(r.getLastKey){d.preventDefault();let b=r.getLastKey();e.setFocusedKey(b),b!=null&&((0,de.isCtrlKeyPressed)(d)&&d.shiftKey&&e.selectionMode==="multiple"?e.extendSelection(b):l&&e.replaceSelection(b))}break}case"PageDown":{if(r.getKeyPageBelow&&e.focusedKey!=null){let b=r.getKeyPageBelow(e.focusedKey);b!=null&&(d.preventDefault(),I(b,d))}break}case"PageUp":{if(r.getKeyPageAbove&&e.focusedKey!=null){let b=r.getKeyPageAbove(e.focusedKey);b!=null&&(d.preventDefault(),I(b,d))}break}case"a":{(0,de.isCtrlKeyPressed)(d)&&e.selectionMode==="multiple"&&!c&&(d.preventDefault(),e.selectAll());break}case"Escape":{a==="clearSelection"&&!f&&e.selectedKeys.size>0&&(d.stopPropagation(),d.preventDefault(),e.clearSelection());break}case"Tab":{!n&&o.current&&d.shiftKey&&o.current.focus();break}}},[r,e,o,E,u,l,v,c,f,a,n,I]),Ee=(0,M.useCallback)(d=>{if(!e.isFocused){if(e.setFocused(!0),e.focusedKey==null){let R=d.relatedTarget,b=R!=null&&!!(d.currentTarget.compareDocumentPosition(R)&Node.DOCUMENT_POSITION_FOLLOWING),ne=null;b?ne=e.lastSelectedKey??r.getLastKey?.()??null:ne=e.firstSelectedKey??r.getFirstKey?.()??null,ne!=null&&(e.setFocusedKey(ne),l&&!e.isSelected(ne)&&e.replaceSelection(ne))}else h.current&&(h.current.scrollTop=T.current.top,h.current.scrollLeft=T.current.left);e.focusedKey!=null&&re(e.focusedKey)}},[e,r,l,h,re]),be=(0,M.useCallback)(d=>{let R=d.relatedTarget;d.currentTarget.contains(R)||e.setFocused(!1)},[e]),Ce=(0,M.useCallback)(d=>{h.current===d.target&&d.preventDefault()},[h]);(0,M.useEffect)(()=>{let d=h.current;if(!d)return()=>{};let R=()=>{T.current={top:d.scrollTop,left:d.scrollLeft}};return d.addEventListener("scroll",R,{passive:!0}),()=>{d.removeEventListener("scroll",R)}},[h]),(0,M.useEffect)(()=>{if(!S.current)return;let d=null;if(S.current==="first"?d=r.getFirstKey?.()??null:S.current==="last"&&(d=r.getLastKey?.()??null),e.selectedKeys.size>0){for(let R of e.selectedKeys)if(e.canSelectItem?.(R)!==!1){d=R;break}}e.setFocused(!0),e.setFocusedKey(d),d==null&&!s&&o.current&&o.current.focus(),S.current=!1},[r,e,o,s]),(0,M.useEffect)(()=>{if(!e.isFocused||e.focusedKey==null||e.focusedKey===L.current)return;let d=Ct(o,e.focusedKey);d&&h.current&&(0,Ve.scrollIntoView)(h.current,d),L.current=e.focusedKey},[e.isFocused,e.focusedKey,o,h]),(0,M.useEffect)(()=>()=>{U.current&&clearTimeout(U.current)},[]);let m=s?void 0:e.focusedKey==null?0:-1;return{collectionProps:(0,It.mergeProps)({onKeyDown:w,onFocus:Ee,onBlur:be,onMouseDown:Ce,tabIndex:m,"data-orientation":g})}}var P=require("react"),ve={badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valueMissing:!1,valid:!0},Bt={...ve,customError:!0,valid:!1},te={isInvalid:!1,validationErrors:[],validationDetails:ve},Ye=(0,P.createContext)({}),Ae="__formValidationState"+Date.now();function jt(t){if(t[Ae]){let{realtimeValidation:e,displayValidation:r,updateValidation:o,resetValidation:i,commitValidation:u}=t[Ae];return{realtimeValidation:e,displayValidation:r,updateValidation:o,resetValidation:i,commitValidation:u}}return cr(t)}function cr(t){let{isInvalid:e,validationState:r,name:o,value:i,builtinValidation:u,validate:f,validationBehavior:c="aria"}=t;r&&(e||=r==="invalid");let a=e!==void 0?{isInvalid:e,validationErrors:[],validationDetails:Bt}:null,l=(0,P.useMemo)(()=>{if(!f||i==null)return null;let w=lr(f,i);return Nt(w)},[f,i]);u?.validationDetails.valid&&(u=void 0);let v=(0,P.useContext)(Ye),s=(0,P.useMemo)(()=>o?Array.isArray(o)?o.flatMap(w=>qe(v[w])):qe(v[o]):[],[v,o]),[n,p]=(0,P.useState)(v),[E,g]=(0,P.useState)(!1);v!==n&&(p(v),g(!1));let y=(0,P.useMemo)(()=>Nt(E?[]:s),[E,s]),O=(0,P.useRef)(te),[h,T]=(0,P.useState)(te),L=(0,P.useRef)(te),S=()=>{if(!K)return;U(!1);let w=l||u||O.current;ze(w,L.current)||(L.current=w,T(w))},[K,U]=(0,P.useState)(!1);return(0,P.useEffect)(S),{realtimeValidation:a||y||l||u||te,displayValidation:c==="native"?a||y||h:a||y||l||u||h,updateValidation(w){c==="aria"&&!ze(h,w)?T(w):O.current=w},resetValidation(){let w=te;ze(w,L.current)||(L.current=w,T(w)),c==="native"&&U(!1),g(!0)},commitValidation(){c==="native"&&U(!0),g(!0)}}}function qe(t){return t?Array.isArray(t)?t:[t]:[]}function lr(t,e){if(typeof t=="function"){let r=t(e);if(r&&typeof r!="boolean")return qe(r)}return[]}function Nt(t){return t.length?{isInvalid:!0,validationErrors:t,validationDetails:Bt}:null}function ze(t,e){return t===e?!0:!!t&&!!e&&t.isInvalid===e.isInvalid&&t.validationErrors.length===e.validationErrors.length&&t.validationErrors.every((r,o)=>r===e.validationErrors[o])&&Object.entries(t.validationDetails).every(([r,o])=>e.validationDetails[r]===o)}function Wt(...t){let e=new Set,r=!1,o={...ve};for(let i of t){for(let u of i.validationErrors)e.add(u);r||=i.isInvalid;for(let u in o)o[u]||=i.validationDetails[u]}return o.valid=!r,{isInvalid:r,validationErrors:[...e],validationDetails:o}}0&&(module.exports={DEFAULT_VALIDATION_RESULT,FormValidationContext,VALID_VALIDITY_STATE,getInteractionModality,mergeValidation,privateValidationStateProp,useAnimation,useAriaProps,useCollectionNavigation,useContextProps,useEffectEvent,useElementVisibility,useFocus,useFocusRing,useFocusVisible,useFocusVisibleListener,useFocusWithin,useFocusable,useFormState,useGlobalListeners,useHover,useId,useIsomorphicInsertionEffect,useKeyboard,useLatestRef,useLongPress,useMounted,usePress,useRenderer,useScrollLock,useSlottedContext,useStyleInjection,useSupported,useSyntheticBlurEvent});
|
|
7
|
+
/*! Bundled license information:
|
|
8
|
+
|
|
9
|
+
react-dom/cjs/react-dom.production.js:
|
|
10
|
+
(**
|
|
11
|
+
* @license React
|
|
12
|
+
* react-dom.production.js
|
|
13
|
+
*
|
|
14
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
15
|
+
*
|
|
16
|
+
* This source code is licensed under the MIT license found in the
|
|
17
|
+
* LICENSE file in the root directory of this source tree.
|
|
18
|
+
*)
|
|
19
|
+
|
|
20
|
+
react-dom/cjs/react-dom.development.js:
|
|
21
|
+
(**
|
|
22
|
+
* @license React
|
|
23
|
+
* react-dom.development.js
|
|
24
|
+
*
|
|
25
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
26
|
+
*
|
|
27
|
+
* This source code is licensed under the MIT license found in the
|
|
28
|
+
* LICENSE file in the root directory of this source tree.
|
|
29
|
+
*)
|
|
30
|
+
*/
|