UNPKG

@cgi-learning-hub/ui

Version:

@cgi-learning-hub/ui is an open-source React component library that implements UI for HUB's features

2 lines (1 loc) 1.03 kB
"use strict";var a=Object.defineProperty;var f=(e,t,r)=>t in e?a(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var n=(e,t,r)=>f(e,typeof t!="symbol"?t+"":t,r);const l=require("react");function d(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const c=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,c.get?c:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const i=d(l),s={};function o(e,t){const r=i.useRef(s);return r.current===s&&(r.current=e(t)),r}const m=[];function I(e){i.useEffect(e,m)}class u{constructor(){n(this,"currentId",null);n(this,"clear",()=>{this.currentId!==null&&(clearTimeout(this.currentId),this.currentId=null)});n(this,"disposeEffect",()=>this.clear)}static create(){return new u}start(t,r){this.clear(),this.currentId=setTimeout(()=>{this.currentId=null,r()},t)}}function p(){const e=o(u.create).current;return I(e.disposeEffect),e}exports.Timeout=u;exports.useLazyRef=o;exports.useTimeout=p;