@stanfordspezi/spezi-web-design-system
Version:
Stanford Biodesign Digital Health Spezi Web Design System
2 lines (1 loc) • 3.02 kB
JavaScript
;const h=require("react"),C=require("react/jsx-runtime");function w(t){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const e in t)if(e!=="default"){const i=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(o,e,i.get?i:{enumerable:!0,get:()=>t[e]})}}return o.default=t,Object.freeze(o)}const u=w(h);function $(t,o){const e=u.createContext(o),i=c=>{const{children:n,...r}=c,f=u.useMemo(()=>r,Object.values(r));return C.jsx(e.Provider,{value:f,children:n})};i.displayName=t+"Provider";function s(c){const n=u.useContext(e);if(n)return n;if(o!==void 0)return o;throw new Error(`\`${c}\` must be used within \`${t}\``)}return[i,s]}function j(t,o=[]){let e=[];function i(c,n){const r=u.createContext(n),f=e.length;e=[...e,n];const m=l=>{var b;const{scope:a,children:v,...x}=l,S=((b=a==null?void 0:a[t])==null?void 0:b[f])||r,P=u.useMemo(()=>x,Object.values(x));return C.jsx(S.Provider,{value:P,children:v})};m.displayName=c+"Provider";function d(l,a){var S;const v=((S=a==null?void 0:a[t])==null?void 0:S[f])||r,x=u.useContext(v);if(x)return x;if(n!==void 0)return n;throw new Error(`\`${l}\` must be used within \`${c}\``)}return[m,d]}const s=()=>{const c=e.map(n=>u.createContext(n));return function(r){const f=(r==null?void 0:r[t])||c;return u.useMemo(()=>({[`__scope${t}`]:{...r,[t]:f}}),[r,f])}};return s.scopeName=t,[i,y(s,...o)]}function y(...t){const o=t[0];if(t.length===1)return o;const e=()=>{const i=t.map(s=>({useScope:s(),scopeName:s.scopeName}));return function(c){const n=i.reduce((r,{useScope:f,scopeName:m})=>{const l=f(c)[`__scope${m}`];return{...r,...l}},{});return u.useMemo(()=>({[`__scope${o.scopeName}`]:n}),[n])}};return e.scopeName=o.scopeName,e}function _(t,o,{checkForDefaultPrevented:e=!0}={}){return function(s){if(t==null||t(s),e===!1||!s.defaultPrevented)return o==null?void 0:o(s)}}var p=globalThis!=null&&globalThis.document?u.useLayoutEffect:()=>{},O=u[" useInsertionEffect ".trim().toString()]||p;function R({prop:t,defaultProp:o,onChange:e=()=>{},caller:i}){const[s,c,n]=M({defaultProp:o,onChange:e}),r=t!==void 0,f=r?t:s;{const d=u.useRef(t!==void 0);u.useEffect(()=>{const l=d.current;l!==r&&console.warn(`${i} is changing from ${l?"controlled":"uncontrolled"} to ${r?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),d.current=r},[r,i])}const m=u.useCallback(d=>{var l;if(r){const a=g(d)?d(t):d;a!==t&&((l=n.current)==null||l.call(n,a))}else c(d)},[r,t,c,n]);return[f,m]}function M({defaultProp:t,onChange:o}){const[e,i]=u.useState(t),s=u.useRef(e),c=u.useRef(o);return O(()=>{c.current=o},[o]),u.useEffect(()=>{var n;s.current!==e&&((n=c.current)==null||n.call(c,e),s.current=e)},[e,s]),[e,i,c]}function g(t){return typeof t=="function"}exports.composeEventHandlers=_;exports.createContext2=$;exports.createContextScope=j;exports.useControllableState=R;exports.useLayoutEffect2=p;