@reach/auto-id
Version:
Autogenerate IDs to facilitate WAI-ARIA and server rendering.
2 lines (1 loc) • 1 kB
JavaScript
var g=Object.create;var i=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var F=Object.getOwnPropertyNames;var P=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty;var y=(n,e)=>{for(var u in e)i(n,u,{get:e[u],enumerable:!0})},m=(n,e,u,f)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of F(e))!d.call(n,t)&&t!==u&&i(n,t,{get:()=>e[t],enumerable:!(f=b(e,t))||f.enumerable});return n};var R=(n,e,u)=>(u=n!=null?g(P(n)):{},m(e||!n||!n.__esModule?i(u,"default",{value:n,enumerable:!0}):u,n)),E=n=>m(i({},"__esModule",{value:!0}),n);var h={};y(h,{useId:()=>S});module.exports=E(h);var s=R(require("react")),c=require("@reach/utils"),r=!1,L=0;function l(){return++L}var o=s["useId".toString()];function S(n){var t;if(o!==void 0){let a=o();return n!=null?n:a}let e=n!=null?n:r?l():null,[u,f]=s.useState(e);return(0,c.useIsomorphicLayoutEffect)(()=>{u===null&&f(l())},[]),s.useEffect(()=>{r===!1&&(r=!0)},[]),(t=n!=null?n:u)!=null?t:void 0}0&&(module.exports={useId});
;