UNPKG

sui-explorer-local

Version:
2 lines (1 loc) 4.07 kB
import{r,a as P}from"./index-76fb7be0.js";import{_ as A}from"./extends-98964cd2.js";import{r as b}from"./index-d3ea75b5.js";import{a as C,$ as E}from"./index-d5a566d3.js";function k(e,n,{checkForDefaultPrevented:o=!0}={}){return function(c){if(e==null||e(c),o===!1||!c.defaultPrevented)return n==null?void 0:n(c)}}function B(e,n=[]){let o=[];function t(u,f){const a=r.createContext(f),i=o.length;o=[...o,f];function s(d){const{scope:l,children:$,...p}=d,x=(l==null?void 0:l[e][i])||a,S=r.useMemo(()=>p,Object.values(p));return r.createElement(x.Provider,{value:S},$)}function m(d,l){const $=(l==null?void 0:l[e][i])||a,p=r.useContext($);if(p)return p;if(f!==void 0)return f;throw new Error(`\`${d}\` must be used within \`${u}\``)}return s.displayName=u+"Provider",[s,m]}const c=()=>{const u=o.map(f=>r.createContext(f));return function(a){const i=(a==null?void 0:a[e])||u;return r.useMemo(()=>({[`__scope${e}`]:{...a,[e]:i}}),[a,i])}};return c.scopeName=e,[t,g(c,...n)]}function g(...e){const n=e[0];if(e.length===1)return n;const o=()=>{const t=e.map(c=>({useScope:c(),scopeName:c.scopeName}));return function(u){const f=t.reduce((a,{useScope:i,scopeName:s})=>{const d=i(u)[`__scope${s}`];return{...a,...d}},{});return r.useMemo(()=>({[`__scope${n.scopeName}`]:f}),[f])}};return o.scopeName=n.scopeName,o}const N=globalThis!=null&&globalThis.document?r.useLayoutEffect:()=>{},M=P["useId".toString()]||(()=>{});let T=0;function j(e){const[n,o]=r.useState(M());return N(()=>{e||o(t=>t??String(T++))},[e]),e||(n?`radix-${n}`:"")}function h(e){const n=r.useRef(e);return r.useEffect(()=>{n.current=e}),r.useMemo(()=>(...o)=>{var t;return(t=n.current)===null||t===void 0?void 0:t.call(n,...o)},[])}function F({prop:e,defaultProp:n,onChange:o=()=>{}}){const[t,c]=O({defaultProp:n,onChange:o}),u=e!==void 0,f=u?e:t,a=h(o),i=r.useCallback(s=>{if(u){const d=typeof s=="function"?s(e):s;d!==e&&a(d)}else c(s)},[u,e,c,a]);return[f,i]}function O({defaultProp:e,onChange:n}){const o=r.useState(e),[t]=o,c=r.useRef(t),u=h(n);return r.useEffect(()=>{c.current!==t&&(u(t),c.current=t)},[t,c,u]),o}const R=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],q=R.reduce((e,n)=>{const o=r.forwardRef((t,c)=>{const{asChild:u,...f}=t,a=u?C:n;return r.useEffect(()=>{window[Symbol.for("radix-ui")]=!0},[]),r.createElement(a,A({},f,{ref:c}))});return o.displayName=`Primitive.${n}`,{...e,[n]:o}},{});function z(e,n){e&&b.flushSync(()=>e.dispatchEvent(n))}function _(e,n){return r.useReducer((o,t)=>{const c=n[o][t];return c??o},e)}const y=e=>{const{present:n,children:o}=e,t=U(n),c=typeof o=="function"?o({present:t.isPresent}):r.Children.only(o),u=E(t.ref,c.ref);return typeof o=="function"||t.isPresent?r.cloneElement(c,{ref:u}):null};y.displayName="Presence";function U(e){const[n,o]=r.useState(),t=r.useRef({}),c=r.useRef(e),u=r.useRef("none"),f=e?"mounted":"unmounted",[a,i]=_(f,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return r.useEffect(()=>{const s=v(t.current);u.current=a==="mounted"?s:"none"},[a]),N(()=>{const s=t.current,m=c.current;if(m!==e){const l=u.current,$=v(s);e?i("MOUNT"):$==="none"||(s==null?void 0:s.display)==="none"?i("UNMOUNT"):i(m&&l!==$?"ANIMATION_OUT":"UNMOUNT"),c.current=e}},[e,i]),N(()=>{if(n){const s=d=>{const $=v(t.current).includes(d.animationName);d.target===n&&$&&b.flushSync(()=>i("ANIMATION_END"))},m=d=>{d.target===n&&(u.current=v(t.current))};return n.addEventListener("animationstart",m),n.addEventListener("animationcancel",s),n.addEventListener("animationend",s),()=>{n.removeEventListener("animationstart",m),n.removeEventListener("animationcancel",s),n.removeEventListener("animationend",s)}}else i("ANIMATION_END")},[n,i]),{isPresent:["mounted","unmountSuspended"].includes(a),ref:r.useCallback(s=>{s&&(t.current=getComputedStyle(s)),o(s)},[])}}function v(e){return(e==null?void 0:e.animationName)||"none"}export{B as $,F as a,j as b,q as c,k as d,y as e,N as f,h as g,z as h};